Hello, Nicholas. Nicholas A. Bellinger wrote: > Ok, I am up and running using the following patch against v2.6.28-rc6 > (along with Tejun's patch). Comments please..? > > diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c > index f5d3b96..77f1fe0 100644 > --- a/drivers/scsi/scsi_lib.c > +++ b/drivers/scsi/scsi_lib.c > @@ -1505,7 +1507,7 @@ static void scsi_kill_request(struct request *req, struct request_queue *q) > struct scsi_target *starget = scsi_target(sdev); > struct Scsi_Host *shost = sdev->host; > > - blkdev_dequeue_request(req); > + elv_dequeue_request(req->q, req); I don't think this really matters. Either one wouldn't really matter. > if (unlikely(cmd == NULL)) { > printk(KERN_CRIT "impossible request in %s.\n", > @@ -1634,7 +1636,7 @@ static void scsi_request_fn(struct request_queue *q) > * Remove the request from the request list. > */ > if (!(blk_queue_tagged(q) && !blk_queue_start_tag(q, req))) > - blkdev_dequeue_request(req); > + elv_dequeue_request(req->q, req); > sdev->device_busy++; > > spin_unlock(q->queue_lock); And this change is incorrect. Timer should start here. I don't think you're seeing the same problem. I'll reply to the original message. Thanks. -- tejun -- To unsubscribe from this list: 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