[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210701005117.3846179-1-jaegeuk@kernel.org>
Date: Wed, 30 Jun 2021 17:51:17 -0700
From: Jaegeuk Kim <jaegeuk@...nel.org>
To: linux-kernel@...r.kernel.org, linux-scsi@...r.kernel.org
Cc: Jaegeuk Kim <jaegeuk@...nel.org>,
Stanley Chu <stanley.chu@...iatek.com>,
Can Guo <cang@...eaurora.org>, Bean Huo <beanhuo@...ron.com>,
Bart Van Assche <bvanassche@....org>,
Asutosh Das <asutoshd@...eaurora.org>
Subject: [PATCH] scsi: ufs: add missing host_lock in setup_xfer_req
This patch adds a host_lock which existed before on ufshcd_vops_setup_xfer_req.
Cc: Stanley Chu <stanley.chu@...iatek.com>
Cc: Can Guo <cang@...eaurora.org>
Cc: Bean Huo <beanhuo@...ron.com>
Cc: Bart Van Assche <bvanassche@....org>
Cc: Asutosh Das <asutoshd@...eaurora.org>
Fixes: a45f937110fa ("scsi: ufs: Optimize host lock on transfer requests send/compl paths")
Signed-off-by: Jaegeuk Kim <jaegeuk@...nel.org>
---
drivers/scsi/ufs/ufshcd.h | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/ufs/ufshcd.h b/drivers/scsi/ufs/ufshcd.h
index c98d540ac044..194755c9ddfe 100644
--- a/drivers/scsi/ufs/ufshcd.h
+++ b/drivers/scsi/ufs/ufshcd.h
@@ -1229,8 +1229,13 @@ static inline int ufshcd_vops_pwr_change_notify(struct ufs_hba *hba,
static inline void ufshcd_vops_setup_xfer_req(struct ufs_hba *hba, int tag,
bool is_scsi_cmd)
{
- if (hba->vops && hba->vops->setup_xfer_req)
- return hba->vops->setup_xfer_req(hba, tag, is_scsi_cmd);
+ if (hba->vops && hba->vops->setup_xfer_req) {
+ unsigned long flags;
+
+ spin_lock_irqsave(hba->host->host_lock, flags);
+ hba->vops->setup_xfer_req(hba, tag, is_scsi_cmd);
+ spin_unlock_irqrestore(hba->host->host_lock, flags);
+ }
}
static inline void ufshcd_vops_setup_task_mgmt(struct ufs_hba *hba,
--
2.32.0.93.g670b81a890-goog
Powered by blists - more mailing lists