From: Boaz Harrosh <bharrosh@xxxxxxxxxxx> Subject: Re: [PATCH v2] add bidi support for block pc requests Date: Thu, 10 May 2007 15:37:48 +0300 > > +/* moved to scatterlist.h after chaining sg */ > > +#define sg_next(sg) ((sg) + 1) > > + > > +#define scsi_for_each_sg(cmd, nseg, i) \ > > + for (i = 0, sg = (cmd)->request_buffer; i < nseg; \ > > + sg = sg_next(sg), i++) \ > > + > > Better we do like Jens's patch > +#define for_each_sg(sglist, sg, nr, __i) \ > + for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg)) > > I think that we should wait for Jens pending patchset and do this work on top > of his, then use his sg macros directly. This way the cleaners can also be > watchfully for any drivers that might brake with big IO sent to them. Yeah, we can use sg list's macro something like: #define scsi_for_each_sg(cmd, sg, nseg, __i) \ for_each_sg((cmd)->request_buffer, sg, nseg, __i) Seems that Jens converted lots of LLDs to use for_each_sg. If for_each_sg goes first, we can just replase for_each_sg (but after all, we need to touch LLDs to remove the non-use-sg path). On the other hand, if we go first, there is no conversion for for_each_sg in LLDs. Jens, do you want the sg list stuff done before our cleanups? - 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