Re: [PATCH V2 00/15] scsi: use sg helper to operate sgl

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

 



On Thu, Jun 13, 2019 at 09:42:51AM -0700, James Bottomley wrote:
> On Thu, 2019-06-13 at 15:13 +0800, Ming Lei wrote:
> > Hi,
> > 
> > Most of drivers use sg helpers to operate sgl, however there is
> > still a few drivers which operate sgl directly, this way can't
> > work in case of chained sgl.
> 
> This isn't a useful explanation of the issue you make it sound like a
> bug, which it isn't: it's a change of behaviour we'd like to introduce
> in SCSI.  Please reword the explanation more along the lines of
> 
> ---
> Scsi MQ makes a large static allocation for the first scatter gather
> list chunk for the driver to use.  This is a performance headache we'd
> like to fix by reducing the size of the allocation to a 2 element
> array.  Doing this will break the current guarantee that any driver
> using SG_ALL doesn't need to use the scatterlist iterators and can get
> away with directly dereferencing the array.  Thus we need to update all
> drivers to use the scatterlist iterators and remove direct indexing of
> the scatterlist array before reducing the initial scatterlist
> allocation size in SCSI.
> ---
> 
> Which explains what we're trying to do and why.
> 
> In particular changelogs like this
> 
> > The current way isn't safe for chained sgl, so use sgl helper to
> > operate sgl.
> 
> Are just plain wrong:  They were perfectly safe until you altered the
> conditions for using non-chained sgls.  Please use the above
> explanation in the patches, abbreviated if you like, so all recipients
> know why this needs doing and that it isn't an existing bug.

OK, will update with the above commit log in V3.

Thanks,
Ming



[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