Skip to content

Commit 0fde22c

Browse files
David Jefferymartinkpetersen
authored andcommitted
scsi: mpt3sas: Stop fw fault watchdog work item during system shutdown
During system shutdown or reboot, mpt3sas will reset the firmware back to ready state. However, the driver leaves running a watchdog work item intended to keep the firmware in operational state. This causes a second, unneeded reset on shutdown and moves the firmware back to operational instead of in ready state as intended. And if the mpt3sas_fwfault_debug module parameter is set, this extra reset also panics the system. mpt3sas's scsih_shutdown needs to stop the watchdog before resetting the firmware back to ready state. Link: https://lore.kernel.org/r/20220722142448.6289-1-djeffery@redhat.com Fixes: fae2160 ("scsi: mpt3sas: Transition IOC to Ready state during shutdown") Tested-by: Laurence Oberman <loberman@redhat.com> Acked-by: Sreekanth Reddy <sreekanth.reddy@broadcom.com> Signed-off-by: David Jeffery <djeffery@redhat.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
1 parent 355bf2e commit 0fde22c

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

drivers/scsi/mpt3sas/mpt3sas_scsih.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11386,6 +11386,7 @@ scsih_shutdown(struct pci_dev *pdev)
1138611386
_scsih_ir_shutdown(ioc);
1138711387
_scsih_nvme_shutdown(ioc);
1138811388
mpt3sas_base_mask_interrupts(ioc);
11389+
mpt3sas_base_stop_watchdog(ioc);
1138911390
ioc->shost_recovery = 1;
1139011391
mpt3sas_base_make_ioc_ready(ioc, SOFT_RESET);
1139111392
ioc->shost_recovery = 0;

0 commit comments

Comments
 (0)