Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1e282366 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "scsi: ufs: Avoid dead lock during error recovery"

parents 9f28bf89 80d4ffbb
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -3342,8 +3342,10 @@ static int ufshcd_exec_dev_cmd(struct ufs_hba *hba,
	/*
	 * May get invoked from shutdown and IOCTL contexts.
	 * In shutdown context, it comes in with lock acquired.
	 * In error recovery context, it may come with lock acquired.
	 */
	if (!ufshcd_is_shutdown_ongoing(hba))

	if (!ufshcd_is_shutdown_ongoing(hba) && !ufshcd_eh_in_progress(hba))
		down_read(&hba->lock);

	/*
@@ -3377,7 +3379,7 @@ static int ufshcd_exec_dev_cmd(struct ufs_hba *hba,
out_put_tag:
	ufshcd_put_dev_cmd_tag(hba, tag);
	wake_up(&hba->dev_cmd.tag_wq);
	if (!ufshcd_is_shutdown_ongoing(hba))
	if (!ufshcd_is_shutdown_ongoing(hba) && !ufshcd_eh_in_progress(hba))
		up_read(&hba->lock);
	return err;
}