scsi: ufs: Remove an unpaired ufshcd_scsi_unblock_requests() in err_handler()
authorCan Guo <cang@codeaurora.org>
Wed, 19 Aug 2020 01:02:29 +0000 (18:02 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 21 Aug 2020 01:56:25 +0000 (21:56 -0400)
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 mistake.

Link: https://lore.kernel.org/r/1597798958-24322-1-git-send-email-cang@codeaurora.org
Fixes: 5586dd8ea250 ("scsi: ufs: Fix a race condition between error handler and runtime PM ops")
Reviewed-by: Asutosh Das <asutoshd@codeaurora.org>
Reviewed-by: Hongwu Su<hongwus@codeaurora.org>
Signed-off-by: Can Guo <cang@codeaurora.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/ufs/ufshcd.c

index 66e837c9af8c7d92189f6ebeb5c236833b58038c..06e2439d523cef46fb3c45c6d17d07fee4627d24 100644 (file)
@@ -5679,7 +5679,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);