Set DID_TIME_OUT instead of DRIVER_TIMEOUT when a command
is finally marked as failed after error recovery.

Signed-off-by: Hannes Reinecke <h...@suse.de>
---
 drivers/scsi/scsi_error.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/scsi/scsi_error.c b/drivers/scsi/scsi_error.c
index bfaac355454b..22893050d574 100644
--- a/drivers/scsi/scsi_error.c
+++ b/drivers/scsi/scsi_error.c
@@ -2100,10 +2100,10 @@ void scsi_eh_flush_done_q(struct list_head *done_q)
                        /*
                         * If just we got sense for the device (called
                         * scsi_eh_get_sense), scmd->result is already
-                        * set, do not set DRIVER_TIMEOUT.
+                        * set, do not set DID_TIME_OUT.
                         */
                        if (!scmd->result)
-                               scmd->result |= (DRIVER_TIMEOUT << 24);
+                               scmd->result |= (DID_TIME_OUT << 16);
                        SCSI_LOG_ERROR_RECOVERY(3,
                                scmd_printk(KERN_INFO, scmd,
                                             "%s: flush finish cmd\n",
-- 
2.16.4

Reply via email to