scsi: core: Use DID_TIME_OUT instead of DRIVER_TIMEOUT
authorHannes Reinecke <hare@suse.de>
Tue, 27 Apr 2021 08:30:17 +0000 (10:30 +0200)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 1 Jun 2021 02:48:22 +0000 (22:48 -0400)
Set DID_TIME_OUT instead of DRIVER_TIMEOUT when a command
is finally marked as failed after error recovery.

Link: https://lore.kernel.org/r/20210427083046.31620-12-hare@suse.de
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/scsi_error.c

index 0967021..689ee62 100644 (file)
@@ -2137,10 +2137,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",