Re: [PATCH v3 8/8] scsi: ufs: Fix a deadlock between PM and the SCSI error handler

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

 



On 9/30/22 08:03, Bean Huo wrote:
On Thu, 2022-09-29 at 15:00 -0700, Bart Van Assche wrote:
+       ufshcd_link_recovery(hba);
+       dev_info(hba->dev, "%s() finished; outstanding_tasks =
%#lx.\n",
+                __func__, hba->outstanding_tasks);
+
+       return hba->outstanding_tasks ? SCSI_EH_RESET_TIMER :
SCSI_EH_DONE;

Bart,

you have reset the device and host,  in the case, there are pending
TMs, Should be cleared locally, just like ufshcd_err_handler() does?

Hi Bean,

Do you agree with the following?
* SCSI task management functions are only submitted by the SCSI error
  handler.
* The ufshcd_link_recovery() call added by this patch can only be
  invoked during system suspend.
* System suspend only happens after processes and kernel threads have
  been frozen and after sync() finished. Hence, no I/O should be in
  progress when ufshcd_wl_suspend() is called and the SCSI error handler
  should not be running either.
* Hence, no SCSI commands other than START STOP UNIT should be in
  progress when the ufshcd_link_recovery() call added by this
  patch is invoked. No TMFs should be in progress either.

Thanks,

Bart.



[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