summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/smartpqi
diff options
context:
space:
mode:
authorKevin Barnett <kevin.barnett@microsemi.com>2016-08-31 14:55:11 -0500
committerMartin K. Petersen <martin.petersen@oracle.com>2016-09-02 06:21:38 -0400
commit7d81d2b8714ec72462a99875acbf2f976402f3f1 (patch)
tree7588a3b5ecbf09c1e44c84929b59c33c3e6d3f25 /drivers/scsi/smartpqi
parent4fbebf1a779d9f6890ddc1df90c497b161dfb34c (diff)
downloadlinux-7d81d2b8714ec72462a99875acbf2f976402f3f1.tar.gz
linux-7d81d2b8714ec72462a99875acbf2f976402f3f1.tar.bz2
linux-7d81d2b8714ec72462a99875acbf2f976402f3f1.zip
scsi: smartpqi: scsi queuecommand cleanup
minor cleanup of scsi queue command function Reviewed-by: Scott Teel <scott.teel@microsemi.com> Reviewed-by: Scott Benesh <scott.benesh@microsemi.com> Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> Reviewed-by: Tomas Henzl <thenzl@redhat.com> Signed-off-by: Kevin Barnett <kevin.barnett@microsemi.com> Signed-off-by: Don Brace <don.brace@microsemi.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/smartpqi')
-rw-r--r--drivers/scsi/smartpqi/smartpqi_init.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index db248c15adaf..f0672ed416cb 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -4514,7 +4514,7 @@ static int pqi_aio_submit_io(struct pqi_ctrl_info *ctrl_info,
}
static int pqi_scsi_queue_command(struct Scsi_Host *shost,
- struct scsi_cmnd *scmd)
+ struct scsi_cmnd *scmd)
{
int rc;
struct pqi_ctrl_info *ctrl_info;
@@ -4532,6 +4532,12 @@ static int pqi_scsi_queue_command(struct Scsi_Host *shost,
return 0;
}
+ /*
+ * This is necessary because the SML doesn't zero out this field during
+ * error recovery.
+ */
+ scmd->result = 0;
+
hwq = blk_mq_unique_tag_to_hwq(blk_mq_unique_tag(scmd->request));
if (hwq >= ctrl_info->num_queue_groups)
hwq = 0;