summaryrefslogtreecommitdiff
path: root/drivers/scsi
diff options
context:
space:
mode:
authorNicholas Piggin <npiggin@gmail.com>2019-10-24 09:38:04 +0300
committerMartin K. Petersen <martin.petersen@oracle.com>2019-10-29 04:58:01 +0300
commitd3566abb1a1e7772116e4d50fb6a58d19c9802e5 (patch)
tree37ce31c6bb14a10508a7c51d130d0b77739ce039 /drivers/scsi
parent0cf9f4e547cebb5f5d2d046437c71ddcc8ea4a39 (diff)
downloadlinux-d3566abb1a1e7772116e4d50fb6a58d19c9802e5.tar.xz
scsi: qla2xxx: stop timer in shutdown path
In shutdown/reboot paths, the timer is not stopped: qla2x00_shutdown pci_device_shutdown device_shutdown kernel_restart_prepare kernel_restart sys_reboot This causes lockups (on powerpc) when firmware config space access calls are interrupted by smp_send_stop later in reboot. Fixes: e30d1756480dc ("[SCSI] qla2xxx: Addition of shutdown callback handler.") Link: https://lore.kernel.org/r/20191024063804.14538-1-npiggin@gmail.com Signed-off-by: Nicholas Piggin <npiggin@gmail.com> Acked-by: Himanshu Madhani <hmadhani@marvell.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/qla2xxx/qla_os.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index e4d765fc03ea..39f7782a133b 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -3529,6 +3529,10 @@ qla2x00_shutdown(struct pci_dev *pdev)
qla2x00_try_to_stop_firmware(vha);
}
+ /* Disable timer */
+ if (vha->timer_active)
+ qla2x00_stop_timer(vha);
+
/* Turn adapter off line */
vha->flags.online = 0;