Re: [PATCH v3 11/20] sg: replace rq array with lists

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

 



On Wed, Aug 07, 2019 at 01:42:43PM +0200, Douglas Gilbert wrote:
> Remove the fixed size array of 16 request elements per file
> descriptor and replace with two linked lists per file descriptor.
> One list is for active commands, the other list is a free list.
> sg_request objects are now kept, available for re-use, until
> their owning file descriptor is closed. The sg_request deletions
> are now in sg_remove_sfp_usercontext(). Each active sg_request
> has associated block request and scsi_request objects which are
> released much earlier; their lifetime is the same as it was in
> the v3 sg driver. The lifetime of the bio is also the same (but
> is stretched in a later patch).

Willy would probably want you to use an xarray.

> Add an enum for request state (sg_rq_state) and collect
> various flags into bit maps: one for requests (SG_FRQ_*) and
> the other for file descriptors (SG_FFD_*). They join a
> per sg_device bit map (SG_FDEV_*) added in an earlier
> patch.
> 
> Prior to a new sg_request object being (re-)built, information
> that will be placed in it uses a new struct sg_comm_wr_t
> object.
> 
> Since the above changes touch almost every function and low
> level structures, this patch is big. With so many changes, the
> diff utility that generates the patch sometimes loses track.

There seem to be a lot of rather unrelated changes here.  Also
please don't use __put_user/__get_user for that same reason that
drivers should not use __copy_to_user/__copy_from_user.



[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