diff mbox series

[v2,1/4] scsi: ufs: Cleanup ufshcd_add_command_trace()

Message ID 20210531104308.391842-2-huobean@gmail.com (mailing list archive)
State Accepted
Headers show
Series Several minor changes for UFS | expand

Commit Message

Bean Huo May 31, 2021, 10:43 a.m. UTC
From: Bean Huo <beanhuo@micron.com>

To consistent with trace event print, convert the value of the
variable 'lba' in the unit of LBA (logical block address).

Suggested-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Bean Huo <beanhuo@micron.com>
---
 drivers/scsi/ufs/ufshcd.c | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

Comments

Can Guo June 2, 2021, 2:35 a.m. UTC | #1
On 2021-05-31 18:43, Bean Huo wrote:
> From: Bean Huo <beanhuo@micron.com>
> 
> To consistent with trace event print, convert the value of the
> variable 'lba' in the unit of LBA (logical block address).
> 
> Suggested-by: Bart Van Assche <bvanassche@acm.org>
> Signed-off-by: Bean Huo <beanhuo@micron.com>
> ---
>  drivers/scsi/ufs/ufshcd.c | 16 +++++++++-------
>  1 file changed, 9 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
> index 02267b090729..85590d3a719e 100644
> --- a/drivers/scsi/ufs/ufshcd.c
> +++ b/drivers/scsi/ufs/ufshcd.c
> @@ -25,6 +25,7 @@
>  #include "ufs_bsg.h"
>  #include "ufshcd-crypto.h"
>  #include <asm/unaligned.h>
> +#include "../sd.h"
> 
>  #define CREATE_TRACE_POINTS
>  #include <trace/events/ufs.h>
> @@ -364,7 +365,7 @@ static void ufshcd_add_uic_command_trace(struct
> ufs_hba *hba,
>  static void ufshcd_add_command_trace(struct ufs_hba *hba, unsigned int 
> tag,
>  				     enum ufs_trace_str_t str_t)
>  {
> -	sector_t lba = -1;
> +	u64 lba = -1;
>  	u8 opcode = 0, group_id = 0;
>  	u32 intr, doorbell;
>  	struct ufshcd_lrb *lrbp = &hba->lrb[tag];
> @@ -382,22 +383,23 @@ static void ufshcd_add_command_trace(struct
> ufs_hba *hba, unsigned int tag,
>  		/* trace UPIU also */
>  		ufshcd_add_cmd_upiu_trace(hba, tag, str_t);
>  		opcode = cmd->cmnd[0];
> +		lba = sectors_to_logical(cmd->device, blk_rq_pos(cmd->request));
> +
>  		if ((opcode == READ_10) || (opcode == WRITE_10)) {
>  			/*
>  			 * Currently we only fully trace read(10) and write(10)
>  			 * commands
>  			 */
> -			if (cmd->request && cmd->request->bio)
> -				lba = cmd->request->bio->bi_iter.bi_sector;
>  			transfer_len = be32_to_cpu(
>  				lrbp->ucd_req_ptr->sc.exp_data_transfer_len);
>  			if (opcode == WRITE_10)
>  				group_id = lrbp->cmd->cmnd[6];
>  		} else if (opcode == UNMAP) {
> -			if (cmd->request) {
> -				lba = scsi_get_lba(cmd);
> -				transfer_len = blk_rq_bytes(cmd->request);
> -			}
> +			/*
> +			 * The number of Bytes to be unmapped beginning with the
> +			 * lba.
> +			 */
> +			transfer_len = blk_rq_bytes(cmd->request);
>  		}
>  	}

Reviewed-by: Can Guo <cang@codeaurora.org>
diff mbox series

Patch

diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
index 02267b090729..85590d3a719e 100644
--- a/drivers/scsi/ufs/ufshcd.c
+++ b/drivers/scsi/ufs/ufshcd.c
@@ -25,6 +25,7 @@ 
 #include "ufs_bsg.h"
 #include "ufshcd-crypto.h"
 #include <asm/unaligned.h>
+#include "../sd.h"
 
 #define CREATE_TRACE_POINTS
 #include <trace/events/ufs.h>
@@ -364,7 +365,7 @@  static void ufshcd_add_uic_command_trace(struct ufs_hba *hba,
 static void ufshcd_add_command_trace(struct ufs_hba *hba, unsigned int tag,
 				     enum ufs_trace_str_t str_t)
 {
-	sector_t lba = -1;
+	u64 lba = -1;
 	u8 opcode = 0, group_id = 0;
 	u32 intr, doorbell;
 	struct ufshcd_lrb *lrbp = &hba->lrb[tag];
@@ -382,22 +383,23 @@  static void ufshcd_add_command_trace(struct ufs_hba *hba, unsigned int tag,
 		/* trace UPIU also */
 		ufshcd_add_cmd_upiu_trace(hba, tag, str_t);
 		opcode = cmd->cmnd[0];
+		lba = sectors_to_logical(cmd->device, blk_rq_pos(cmd->request));
+
 		if ((opcode == READ_10) || (opcode == WRITE_10)) {
 			/*
 			 * Currently we only fully trace read(10) and write(10)
 			 * commands
 			 */
-			if (cmd->request && cmd->request->bio)
-				lba = cmd->request->bio->bi_iter.bi_sector;
 			transfer_len = be32_to_cpu(
 				lrbp->ucd_req_ptr->sc.exp_data_transfer_len);
 			if (opcode == WRITE_10)
 				group_id = lrbp->cmd->cmnd[6];
 		} else if (opcode == UNMAP) {
-			if (cmd->request) {
-				lba = scsi_get_lba(cmd);
-				transfer_len = blk_rq_bytes(cmd->request);
-			}
+			/*
+			 * The number of Bytes to be unmapped beginning with the
+			 * lba.
+			 */
+			transfer_len = blk_rq_bytes(cmd->request);
 		}
 	}