summaryrefslogtreecommitdiff
path: root/drivers/scsi/esp_scsi.c
diff options
context:
space:
mode:
authorFinn Thain <fthain@telegraphics.com.au>2017-08-04 08:43:20 +0300
committerMartin K. Petersen <martin.petersen@oracle.com>2017-08-11 02:55:35 +0300
commitd60e9eec95d2e81253eaf3c39ac8baf4830d0472 (patch)
treed20d6730722dad9daeb5847191117fe696146d9a /drivers/scsi/esp_scsi.c
parentc69edff5c5a7ee539b353c4266cccb9080ab55b4 (diff)
downloadlinux-d60e9eec95d2e81253eaf3c39ac8baf4830d0472.tar.xz
scsi: esp_scsi: Always clear msg_out_len after MESSAGE OUT phase
After sending a message, always clear esp->msg_out_len. Otherwise, eh_abort_handler may subsequently fail to send an ABORT TASK SET message. Tested-by: Stan Johnson <userm57@yahoo.com> Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/esp_scsi.c')
-rw-r--r--drivers/scsi/esp_scsi.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/scsi/esp_scsi.c b/drivers/scsi/esp_scsi.c
index 4d1e08a87274..c3fc34b9964d 100644
--- a/drivers/scsi/esp_scsi.c
+++ b/drivers/scsi/esp_scsi.c
@@ -1951,6 +1951,8 @@ again:
scsi_esp_cmd(esp, ESP_CMD_NULL);
}
+ esp->msg_out_len = 0;
+
esp_event(esp, ESP_EVENT_CHECK_PHASE);
goto again;
case ESP_EVENT_MSGIN: