On 11/12/19 7:43 AM, Bean Huo (beanhuo) wrote:
Can Guo wrote:
>> Bart Van Assche wrote:
/* handle fatal errors only when link is functional */
if (hba->ufshcd_state == UFSHCD_STATE_OPERATIONAL) {
- /* block commands from scsi mid-layer */
- ufshcd_scsi_block_requests(hba);
+ /* block all commands, incl. SCSI commands */
+ ufshcd_block_requests(hba, ULONG_MAX);
ufshcd_block_requests() may sleep, but ufshcd_check_errors is called from
IRQ(atmic) context.
[Bean Huo]
Can Guo's comment is correct, I triggered an error manually, my UFS being killed.
And removing this patch, no problem. Please take this seriously.
Hi Can and Bean,
Thank you for having reported this. I'll look into keeping
scsi_block_requests() and scsi_unblock_requests() in this code path.
Thanks,
Bart.