FROMLIST: scsi: ufs: fix livelock of ufshcd_clear_ua_wluns
When gate_work/ungate_work gets an error during hibern8_enter or exit,
ufshcd_err_handler()
ufshcd_scsi_block_requests()
ufshcd_reset_and_restore()
ufshcd_clear_ua_wluns() -> stuck
ufshcd_scsi_unblock_requests()
In order to avoid it, ufshcd_clear_ua_wluns() can be called per recovery flows
such as suspend/resume, link_recovery, and error_handler.
Bug: 175391270
Link: https://lore.kernel.org/linux-scsi/20201218033131.2624065-1-jaegeuk@kernel.org/T/#u
Fixes: fc6762d9 ("FROMLIST: scsi: ufs: Clear UAC for RPMB after ufshcd resets")
Signed-off-by:
Jaegeuk Kim <jaegeuk@kernel.org>
Signed-off-by:
Jaegeuk Kim <jaegeuk@google.com>
Change-Id: Ia53b70ce24c191985de3f8678c854e2df626de11
Loading
Please sign in to comment