Re: question about mpt3sas commit b424eaa1b51c

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

 



On 4/8/23 21:18, Jerry Snitselaar wrote:
> We've had some people trying to track a problem for months revolving
> around a system hanging at shutdown, and last thing they see being a
> message from mpt3sas about a reset. They quickly bisected down to the
> commit below, and reverted it made the problem go away for the
> customer.
> 
> b424eaa1b51c ("scsi: mpt3sas: Transition IOC to Ready state during shutdown")
> 
> I got asked to look at something since I recently at another issue
> that involved mpt3sas at shutdown, so I was looking through the
> history, saw this commit being mentined. Looking at it, I'm not sure
> why it is doing what is doing.
> 
> It says it is to perform a soft reset, but that was already happening before this commit via:
> 
> scsih_shutdown -> mpt3sas_base_detach -> mpt3sas_base_free_resources -> _base_make_ioc_ready(ioc, SOFT_RESET);
> 
> The original submission [1] had the following commit message:
> 
> "During shutdown just move the IOC state to Ready state
> by issuing MUR. No need to free any IOC memory pools."
> 
> But is now skipping more than not freeing the memory pools. It no
> longer frees memory that was kalloc'd, it doesn't unmap something that
> was iomapped, it no longer cleans up the fault reset workqueue, and no
> longer calls the pci cleanup code. It also no longer does the things
> it moved to scsih_shutdown under the pci access mutex, nor uses the if
> condition that was in mpt3sas_base_free_resources.
> 
> [1] https://lore.kernel.org/r/20210705145951.32258-1-sreekanth.reddy@xxxxxxxxxxxx
> 
> 
> Am I missing something, and what the commit does here is really okay?

When a driver's shutdown method is called it may be still processing in
parallel I/Os (that may also happen any time later) so not releasing the
resources the driver has allocated is correct. A next step is then a
power off or a boot of a new kernel anyway.
A driver should stop DMA transfers and IRQ's, silence itself and when
needed inform the attached hw to flush memory or whatever else.

(The fix I've posted for the DMA issue in shutdown has this subject
'mpt3sas: fix an issue when driver's being removed')

Regards,
Tomas

> 
> 
> Regards,
> Jerry
> 




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux