Re: [PATCH 01/18] ide: dequeue in-flight request

From: Bartlomiej Zolnierkiewicz
Date: Sat May 09 2009 - 12:04:49 EST


On Friday 08 May 2009 04:53:59 Tejun Heo wrote:
> ide generally has single request in flight and tracks it using
> hwif->rq and all state handlers follow the following convention.
>
> * ide_started is returned if the request is in flight.
>
> * ide_stopped is returned if the queue needs to be restarted. The
> request might or might not have been processed fully or partially.
>
> * hwif->rq is set to NULL, when an issued request completes.
>
> So, dequeueing model can be implemented by dequeueing after fetch,
> requeueing if hwif->rq isn't NULL on ide_stopped return and doing
> about the same thing on completion / port unlock paths. These changes
> can be made in ide-io proper.
>
> In addition to the above main changes, the following updates are
> necessary.
>
> * ide-cd shouldn't dequeue a request when issuing REQUEST SENSE for it
> as the request is already dequeued.
>
> * ide-atapi uses request queue as stack when issuing REQUEST SENSE to
> put the REQUEST SENSE in front of the failed request. This now
> needs to be done using requeueing.
>
> [ Impact: dequeue in-flight request ]
>
> Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
> Cc: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxx>
> Cc: Borislav Petkov <petkovbb@xxxxxxxxxxxxxx>
> Cc: Sergei Shtylyov <sshtylyov@xxxxxxxxxxxxx>

Acked-by: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxx>
--
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/