From owner-cvs-all@FreeBSD.ORG Wed Apr 30 10:32:34 2003 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9E0B137B404 for ; Wed, 30 Apr 2003 10:32:34 -0700 (PDT) Received: from rootlabs.com (root.org [67.118.192.226]) by mx1.FreeBSD.org (Postfix) with SMTP id 4B99043F85 for ; Wed, 30 Apr 2003 10:32:33 -0700 (PDT) (envelope-from nate@rootlabs.com) Received: (qmail 78336 invoked by uid 1000); 30 Apr 2003 17:32:34 -0000 Date: Wed, 30 Apr 2003 10:32:34 -0700 (PDT) From: Nate Lawson To: "Kenneth D. Merry" In-Reply-To: <20030430003533.1684837B407@hub.freebsd.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/cam cam_ccb.h src/sys/cam/scsi scsi_all.c scsi_all.h scsi_da.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Apr 2003 17:32:35 -0000 On Tue, 29 Apr 2003, Kenneth D. Merry wrote: > Modified files: > sys/cam cam_ccb.h > sys/cam/scsi scsi_all.c scsi_all.h scsi_da.c > Log: > Add support to CAM for devices with more than 2^32 blocks. (2TB if you're > using 512 byte blocks). Excellent! BTW, this could use more testing from people who have 16 byte CDB equipment. Run sysctl kern.cam.da.%d.minimum_cmd_size=16 (where %d is the device number). But be sure the equipment can handle it otherwise your drive may hang. > @@ -1100,6 +1160,22 @@ > (bytes[1] << 16) | > (bytes[2] << 8) | > bytes[3]; > + return (rv); > +} > + > +static __inline uint64_t > +scsi_8btou64(uint8_t *bytes) > +{ > + uint64_t rv; > + > + rv = (((uint64_t)bytes[0]) << 56) | > + (((uint64_t)bytes[1]) << 48) | > + (((uint64_t)bytes[2]) << 40) | > + (((uint64_t)bytes[3]) << 32) | > + (((uint64_t)bytes[4]) << 24) | > + (((uint64_t)bytes[5]) << 16) | > + (((uint64_t)bytes[6]) << 8) | > + bytes[7]; > return (rv); > } sys/endian.h? -Nate