On Tue, 2005-04-19 at 14:34 +0200, Jens Axboe wrote: > On Mon, Apr 18 2005, Tejun Heo wrote: > > And, James, regarding REQ_SOFTBARRIER, if the REQ_SOFTBARRIER thing can > > be removed from SCSI midlayer, do you agree to change REQ_SPECIAL to > > mean special requests? If so, I have three proposals. > > > > * move REQ_SOFTBARRIER setting to right after the allocation of > > scsi_cmnd in scsi_prep_fn(). This will be the only place where > > REQ_SOFTBARRIER is used in SCSI midlayer, making it less pervasive. > > * Or, make another API which sets REQ_SOFTBARRIER on requeue. maybe > > blk_requeue_ordered_request()? > > * Or, make blk_insert_request() not set REQ_SPECIAL on requeue. IMHO, > > this is a bit too subtle. > > > > I like #1 or #2. Jens, what do you think? Do you agree to remove > > requeue feature from blk_insert_request()? > > #2 is the best, imho. We really want to maintain ordering on requeue > always, marking it softbarrier automatically in the block layer means > the io schedulers don't have to do anything specific to handle it. This is my preference too. In general, block is the only one that should care what the REQ_SOFTBARRIER flag actually means. SCSI only cares that it submits a non mergeable request. I'm happy to separate the meaning of REQ_SPECIAL from req->special. > I have no problem with removing the requeue stuff from > blk_insert_request(). That function is horribly weird as it is, it is > supposed to look generic but is really just a scsi special case. heh .. would this be because no other driver uses the block layer for requeuing ... ? James - : 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