[PATCH] scsi: ufs: Fix wrong value printed in unexpected UPIU response case

Chanwoo Lee posted 1 patch 1 week, 5 days ago
drivers/ufs/core/ufshcd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] scsi: ufs: Fix wrong value printed in unexpected UPIU response case
Posted by Chanwoo Lee 1 week, 5 days ago
In ufshcd_transfer_rsp_status(), the default case of the inner switch
statement prints the UPIU response code when an unexpected response is
received. However, the code was printing 'result' variable which is
always 0 at that point, making the error message useless for debugging.

Fix this by printing the actual UPIU response code returned by
ufshcd_get_req_rsp().

Fixes: 08108d31129a ("scsi: ufs: Improve type safety")
Signed-off-by: Chanwoo Lee <cw9316.lee@samsung.com>
---
 drivers/ufs/core/ufshcd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/ufs/core/ufshcd.c b/drivers/ufs/core/ufshcd.c
index 0371dea44887..d8f309db967e 100644
--- a/drivers/ufs/core/ufshcd.c
+++ b/drivers/ufs/core/ufshcd.c
@@ -5706,7 +5706,7 @@ static inline int ufshcd_transfer_rsp_status(struct ufs_hba *hba,
 		default:
 			dev_err(hba->dev,
 				"Unexpected request response code = %x\n",
-				result);
+				ufshcd_get_req_rsp(lrbp->ucd_rsp_ptr));
 			result = DID_ERROR << 16;
 			break;
 		}
-- 
2.43.0
Re: [PATCH] scsi: ufs: Fix wrong value printed in unexpected UPIU response case
Posted by Martin K. Petersen 6 days, 15 hours ago
Chanwoo,

> In ufshcd_transfer_rsp_status(), the default case of the inner switch
> statement prints the UPIU response code when an unexpected response is
> received. However, the code was printing 'result' variable which is
> always 0 at that point, making the error message useless for debugging.
>
> Fix this by printing the actual UPIU response code returned by
> ufshcd_get_req_rsp().

Applied to 7.2/scsi-staging, thanks!

-- 
Martin K. Petersen
Re: [PATCH] scsi: ufs: Fix wrong value printed in unexpected UPIU response case
Posted by Bart Van Assche 1 week, 5 days ago
On 5/27/26 2:21 AM, Chanwoo Lee wrote:
> In ufshcd_transfer_rsp_status(), the default case of the inner switch
> statement prints the UPIU response code when an unexpected response is
> received. However, the code was printing 'result' variable which is
> always 0 at that point, making the error message useless for debugging.
> 
> Fix this by printing the actual UPIU response code returned by
> ufshcd_get_req_rsp().
> 
> Fixes: 08108d31129a ("scsi: ufs: Improve type safety")
> Signed-off-by: Chanwoo Lee <cw9316.lee@samsung.com>
> ---
>   drivers/ufs/core/ufshcd.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/ufs/core/ufshcd.c b/drivers/ufs/core/ufshcd.c
> index 0371dea44887..d8f309db967e 100644
> --- a/drivers/ufs/core/ufshcd.c
> +++ b/drivers/ufs/core/ufshcd.c
> @@ -5706,7 +5706,7 @@ static inline int ufshcd_transfer_rsp_status(struct ufs_hba *hba,
>   		default:
>   			dev_err(hba->dev,
>   				"Unexpected request response code = %x\n",
> -				result);
> +				ufshcd_get_req_rsp(lrbp->ucd_rsp_ptr));
>   			result = DID_ERROR << 16;
>   			break;
>   		}

Reviewed-by: Bart Van Assche <bvanassche@acm.org>