Re: [PATCH v3 3/3] scsi: ufs: Fix wrong Task Tag used in task management request UPIUs

From: Can Guo
Date: Fri Jan 29 2021 - 00:58:50 EST


On 2021-01-29 11:15, Bart Van Assche wrote:
On 1/27/21 8:16 PM, Can Guo wrote:
In __ufshcd_issue_tm_cmd(), it is not right to use hba->nutrs + req->tag as
the Task Tag in one TMR UPIU. Directly use req->tag as the Task Tag.

Why is the current code wrong and why is this patch the proper fix?
Please explain this in the patch description.


req->tag is the tag allocated for one TMR, no?

+ * blk_get_request() used here is only to get a free tag.

Please fix the word order in this comment ("blk_get_request() is used
here only to get a free tag").

Sure.


+ ufshcd_release(hba);
blk_put_request(req);

- ufshcd_release(hba);

An explanation for this change is missing from the patch description.


This is just for symmetric coding since this change is almost
re-writing the whole func - at the entrence it calls blk_get_request()
and ufshcd_hold(), so before exit it'd be good to call ufshcd_release()
before blk_put_request(). If you think this single line change worths
a separate patch, I can split it out in next version.

Thanks,
Can Guo.

Thanks,

Bart.