Re: [patch 13/17] scsi: remove private implementation of get_unaligned_be32

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2008-10-29 at 17:13 -0500, James Bottomley wrote:
> > > No ... as I've said several times now, there's a debate going on about
> > > what we're supposed to be doing with all of this (either putting it in
> > > SCSI, pulling it out or just using the inline notation.
> > 
> > If I knew what the terrible word "it" is replacing, I'd know what the
> > above sentence means.
> 
> It being the correct way to handle multibyte SCSI problems.
> 
> > I'm kinda struggling to imagine why there's controversy, really.  scsi
> > has a private implementation of something which core kernel provides. 
> > Zap!
> 
> The main problems with the above are that a lot of people don't
> necessarily think Big Endian when they see SCSI (even though it's a BE
> bus), so the get_unaligned_beXX looks strange, and secondly most of the
> arrays we operate on are simple u8 ones, so sparse gets annoyed about
> sending a non BE quantity through a BE conversion ... I bet it even does
> this for the above patch.

It does not, the get_unaligned_* family is not typesafe (takes a void *)
as lots of people have u8 arrays or similar.  Even though it probably
should be.

> 
> > >  I'm not putting
> > > a patch like this in until we at least get some consensus.
> > 
> > I'll hang onto it, so there's nowhere to hide...
> 
> OK.
> 

Did you ever have some time to think about my suggestion regarding
defining some common packed structs for the different command formats
taht could be endian-annotated, then use the unaligned helpers against
pointers to these structs...so sparse would actually spot endian
mixups in scsi thereafter?

Harvey

--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux