Re: [PATCH] deadline io scheduler

Jens Axboe
2002-09-30T16:02:47Z

On Mon, Sep 30 2002, Patrick Mansfield wrote:
> On Mon, Sep 30, 2002 at 10:15:22AM +0200, Jens Axboe wrote:
> > On Thu, Sep 26 2002, Patrick Mansfield wrote:
>
> > > I haven't look closely at the block tagging, but for the FCP protocol,
> > > there are no tags, just the type of queueing to use (task attributes)
> > > - like ordered, head of queue, untagged, and some others. The tagging
> > > is normally done on the adapter itself (FCP2 protocol AFAIK). Does this
> > > mean block level queued tagging can't help FCP?
> >
> > The generic block level tagging is nothing more than tag management. It
> > can 'tag' a request (assigning it an integer tag), and later let you
> > locate that request by giving it the tag.
> >
> > I suspect you need none of that for FCP. Instead it looks more like you
> > can set the task attributes based on the type of request itself. So you
> > would currently set 'ordered' for a request with REQ_BARRIER set. And
> > you could set 'head of queue' for REQ_URGENT (I'm making this one up
> > :-), etc.
> >
> > Do you need any request management to deal with FCP queueing? It doesn't
> > sound like it.
>
> No.
>
> OK I understand it now - if someone wants to put barrier support in an FCP
> adapter driver something like we have in scsi_populate_tag_msg() would be
> useful, an inline or macro like:
>
> static inline int scsi_is_ordered(Scsi_Cmnd *SCpnt)
> {
> if (SCpnt->request->flags & REQ_BARRIER)
> return 1;
> else
> return 0;
> }

Exactly

--
Jens Axboe