[smartpqi updates V3 PATCH 8/9] smartpqi: fix isr accessing uninitialized data

From: Don Brace
Date: Wed Jul 14 2021 - 14:29:04 EST


From: Mike McGowen <mike.mcgowen@xxxxxxxxxxxxx>

Correct driver's ISR accessing a data structure member
that has not been fully initialized during driver
initialization.
- The pqi queue groups can have uninitialized members
when an interrupt fires. This has not resulted in
any driver crashes. This was found during our own
internal testing. No bugs were ever filed.

Reviewed-by: Kevin Barnett <kevin.barnett@xxxxxxxxxxxxx>
Reviewed-by: Scott Benesh <scott.benesh@xxxxxxxxxxxxx>
Reviewed-by: Scott Teel <scott.teel@xxxxxxxxxxxxx>
Signed-off-by: Mike McGowen <mike.mcgowen@xxxxxxxxxxxxx>
Signed-off-by: Don Brace <don.brace@xxxxxxxxxxxxx>
---
drivers/scsi/smartpqi/smartpqi_init.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index f0e84354f782..ab1c9c483478 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -7760,11 +7760,11 @@ static int pqi_ctrl_init(struct pqi_ctrl_info *ctrl_info)

pqi_init_operational_queues(ctrl_info);

- rc = pqi_request_irqs(ctrl_info);
+ rc = pqi_create_queues(ctrl_info);
if (rc)
return rc;

- rc = pqi_create_queues(ctrl_info);
+ rc = pqi_request_irqs(ctrl_info);
if (rc)
return rc;

--
2.28.0.rc1.9.ge7ae437ac1