Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Apr 2003 11:51:37 -0600
From:      "Kenneth D. Merry" <ken@kdm.org>
To:        Nate Lawson <nate@root.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
Message-ID:  <20030430115137.A4010@panzer.kdm.org>
In-Reply-To: <Pine.BSF.4.21.0304301023560.78276-100000@root.org>; from nate@root.org on Wed, Apr 30, 2003 at 10:32:34AM -0700
References:  <20030430003533.1684837B407@hub.freebsd.org> <Pine.BSF.4.21.0304301023560.78276-100000@root.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Apr 30, 2003 at 10:32:34 -0700, Nate Lawson wrote:
> 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.

Julian said he may be able to test it.  His box can't create an array
larger than 2TB (unless they change their firmware), but it does accept 16
byte commands.

If anyone else has equipment that can handle 16 byte commands, we could use
the testing.

> > @@ -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?

I'll try to get around to it.

Ken
-- 
Kenneth Merry
ken@kdm.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030430115137.A4010>