On Thu, 18 Oct 2007 09:51:10 +0200 Boaz Harrosh <bharrosh@xxxxxxxxxxx> wrote: > On Thu, Oct 18 2007 at 1:40 +0200, FUJITA Tomonori <fujita.tomonori@xxxxxxxxxxxxx> wrote: > > On Wed, 17 Oct 2007 20:21:15 +0200 > > Boaz Harrosh <bharrosh@xxxxxxxxxxx> wrote: > > > >> In preparation for bidi we abstract all IO members of scsi_cmnd, > >> that will need to duplicate, into a substructure. > >> > >> - Group all IO members of scsi_cmnd into a scsi_data_buffer > >> structure. > >> - Adjust accessors to new members. > >> - scsi_{alloc,free}_sgtable receive a scsi_data_buffer instead of > >> scsi_cmnd. And work on it. > >> - Adjust scsi_init_io() and scsi_release_buffers() for above > >> change. > >> - Fix other parts of scsi_lib/scsi.c to members migration. Use > >> accessors where appropriate. > >> > >> - Old I/O members are kept for backward compatibility, since > >> not all of scsi-ml/ul is converted yet. Once done they will > >> be removed in a closing patch. (Other wise the patchset will > >> not be bisectable) > > > > (snip) > > > >> @@ -114,6 +112,22 @@ struct scsi_cmnd { > >> int result; /* Status code from lower level driver */ > >> > >> unsigned char tag; /* SCSI-II queued command tag */ > >> + > >> + union { > >> + struct scsi_data_buffer sdb; > >> + /* > >> + * FIXME: Here for compatibility with unconverted drivers. > >> + * Must be kept in sync with exact type and order > >> + * of struct scsi_data_buffer members. > >> + */ > >> + struct { > >> + unsigned __deprecated request_bufflen; > >> + int __deprecated resid; > >> + unsigned short __deprecated use_sg; > >> + unsigned short __deprecated place_holder_sg_alloc; > >> + void __deprecated *request_buffer; > >> + }; > >> + }; > >> }; > > > > If we add something like this, why couldn't we merge the > > scsi_data_buffer patchset when I submitted last month? > > > > I thought that I wait you to fix all the old LLDs, then will send a > > clean scsi_data_buffer patchset. > > We do have all the old LLDs fixed. After this patchset the entire tree > is clean. I have just forgot to send the last [33/33] patch that removes > this. I have just sent it now, sorry. > (The change log above explains exactly why this is done here) As I said, I can't see why we need this compatibility hack in the first place. We need to wait patches 1-26 to be merged. After that, we can merge clean scsi_data_buffer patchset (without the compatibility hack). - 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