2020-08-19 01:04:28

by Can Guo

[permalink] [raw]
Subject: [PATCH v2] scsi: ufs: Remove an unpaired ufshcd_scsi_unblock_requests() in err_handler()

Commit 5586dd8ea250 ("scsi: ufs: Fix a race condition between error handler
and runtime PM ops") moves the ufshcd_scsi_block_requests() inside
err_handler(), but forgets to remove the ufshcd_scsi_unblock_requests() in
the early return path. Correct the coding mistake.

Fixes: 5586dd8ea250 ("scsi: ufs: Fix a race condition between error handler and runtime PM ops")
Signed-off-by: Can Guo <[email protected]>
Reviewed-by: Asutosh Das <[email protected]>
Reviewed-by: Hongwu Su<[email protected]>
---

Change since v1:
- Added Fixes tag.

drivers/scsi/ufs/ufshcd.c | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
index 2b55c2e..b8441ad 100644
--- a/drivers/scsi/ufs/ufshcd.c
+++ b/drivers/scsi/ufs/ufshcd.c
@@ -5670,7 +5670,6 @@ static void ufshcd_err_handler(struct work_struct *work)
if (hba->ufshcd_state != UFSHCD_STATE_ERROR)
hba->ufshcd_state = UFSHCD_STATE_OPERATIONAL;
spin_unlock_irqrestore(hba->host->host_lock, flags);
- ufshcd_scsi_unblock_requests(hba);
return;
}
ufshcd_set_eh_in_progress(hba);
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.


2020-08-24 08:43:27

by Bean Huo

[permalink] [raw]
Subject: Re: [PATCH v2] scsi: ufs: Remove an unpaired ufshcd_scsi_unblock_requests() in err_handler()

On Tue, 2020-08-18 at 18:02 -0700, Can Guo wrote:
> Commit 5586dd8ea250 ("scsi: ufs: Fix a race condition between error
> handler
> and runtime PM ops") moves the ufshcd_scsi_block_requests() inside
> err_handler(), but forgets to remove the
> ufshcd_scsi_unblock_requests() in
> the early return path. Correct the coding mistake.
>
> Fixes: 5586dd8ea250 ("scsi: ufs: Fix a race condition between error
> handler and runtime PM ops")
> Signed-off-by: Can Guo <[email protected]>
> Reviewed-by: Asutosh Das <[email protected]>
> Reviewed-by: Hongwu Su<[email protected]>

Reviewed-by: Bean Huo <[email protected]>



2020-09-09 02:21:07

by Martin K. Petersen

[permalink] [raw]
Subject: Re: [PATCH v2] scsi: ufs: Remove an unpaired ufshcd_scsi_unblock_requests() in err_handler()

On Tue, 18 Aug 2020 18:02:29 -0700, Can Guo wrote:

> Commit 5586dd8ea250 ("scsi: ufs: Fix a race condition between error handler
> and runtime PM ops") moves the ufshcd_scsi_block_requests() inside
> err_handler(), but forgets to remove the ufshcd_scsi_unblock_requests() in
> the early return path. Correct the coding mistake.

Applied to 5.10/scsi-queue, thanks!

[1/1] scsi: ufs: Remove an unpaired ufshcd_scsi_unblock_requests() in err_handler()
https://git.kernel.org/mkp/scsi/c/50807f22c89f

--
Martin K. Petersen Oracle Linux Engineering