diff --git a/drivers/scsi/scsi.c b/drivers/scsi/scsi.c index a76d76df4209b96acd005263a937ce9f3098c4e3..321f854947b422871afcc7415826e5db54669142 100644 --- a/drivers/scsi/scsi.c +++ b/drivers/scsi/scsi.c @@ -846,6 +846,10 @@ void scsi_adjust_queue_depth(struct scsi_device *sdev, int tagged, int tags) sdev->queue_depth = tags; switch (tagged) { + case 0: + sdev->ordered_tags = 0; + sdev->simple_tags = 0; + break; case MSG_ORDERED_TAG: sdev->ordered_tags = 1; sdev->simple_tags = 1; @@ -855,13 +859,11 @@ void scsi_adjust_queue_depth(struct scsi_device *sdev, int tagged, int tags) sdev->simple_tags = 1; break; default: + sdev->ordered_tags = 0; + sdev->simple_tags = 0; sdev_printk(KERN_WARNING, sdev, "scsi_adjust_queue_depth, bad queue type, " "disabled\n"); - case 0: - sdev->ordered_tags = sdev->simple_tags = 0; - sdev->queue_depth = tags; - break; } out: spin_unlock_irqrestore(sdev->request_queue->queue_lock, flags);