]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
scsi: smartpqi: scsi queuecommand cleanup
authorKevin Barnett <kevin.barnett@microsemi.com>
Wed, 31 Aug 2016 19:55:11 +0000 (14:55 -0500)
committerChuck Anderson <chuck.anderson@oracle.com>
Fri, 20 Jan 2017 05:35:01 +0000 (21:35 -0800)
Orabug: 25144431

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>
(cherry picked from commit 7d81d2b8714ec72462a99875acbf2f976402f3f1)
Signed-off-by: Brian Maly <brian.maly@oracle.com>
drivers/scsi/smartpqi/smartpqi_init.c

index 088a8cb448543a515ed15874493b4c1019de5681..b4d8842e9ac8e0c552178eeb602fd51a9752c105 100644 (file)
@@ -4526,7 +4526,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;
@@ -4544,6 +4544,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;