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-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html