Re: Regarding posted scsi midlyaer patchsets

From: James Bottomley
Date: Tue Apr 19 2005 - 09:19:41 EST


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


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/