scsi: ufs: core: Clean up ufshcd_add_command_trace()
authorBean Huo <beanhuo@micron.com>
Mon, 31 May 2021 10:43:05 +0000 (12:43 +0200)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 8 Jun 2021 02:35:58 +0000 (22:35 -0400)
To consistent with trace event print, convert the value of the variable
'lba' from a block layer sector address to a logical block adress.

Link: https://lore.kernel.org/r/20210531104308.391842-2-huobean@gmail.com
Suggested-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Can Guo <cang@codeaurora.org>
Signed-off-by: Bean Huo <beanhuo@micron.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/ufs/ufshcd.c

index 718757f..4565fdd 100644 (file)
@@ -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);
                }
        }