Patch "scsi: mpt3sas: Stop fw fault watchdog work item during system shutdown" has been added to the 5.15-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    scsi: mpt3sas: Stop fw fault watchdog work item during system shutdown

to the 5.15-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     scsi-mpt3sas-stop-fw-fault-watchdog-work-item-during.patch
and it can be found in the queue-5.15 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit b4d21334619c4ef06ef1832f7db1b552e104b4d9
Author: David Jeffery <djeffery@xxxxxxxxxx>
Date:   Fri Jul 22 10:24:48 2022 -0400

    scsi: mpt3sas: Stop fw fault watchdog work item during system shutdown
    
    [ Upstream commit 0fde22c5420ed258ee538a760291c2f3935f6a01 ]
    
    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@xxxxxxxxxx
    Fixes: fae21608c31c ("scsi: mpt3sas: Transition IOC to Ready state during shutdown")
    Tested-by: Laurence Oberman <loberman@xxxxxxxxxx>
    Acked-by: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxx>
    Signed-off-by: David Jeffery <djeffery@xxxxxxxxxx>
    Signed-off-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/scsi/mpt3sas/mpt3sas_scsih.c b/drivers/scsi/mpt3sas/mpt3sas_scsih.c
index af275ac42795..5351959fbaba 100644
--- a/drivers/scsi/mpt3sas/mpt3sas_scsih.c
+++ b/drivers/scsi/mpt3sas/mpt3sas_scsih.c
@@ -11386,6 +11386,7 @@ scsih_shutdown(struct pci_dev *pdev)
 	_scsih_ir_shutdown(ioc);
 	_scsih_nvme_shutdown(ioc);
 	mpt3sas_base_mask_interrupts(ioc);
+	mpt3sas_base_stop_watchdog(ioc);
 	ioc->shost_recovery = 1;
 	mpt3sas_base_make_ioc_ready(ioc, SOFT_RESET);
 	ioc->shost_recovery = 0;



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux