summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/scsi_trace.c
diff options
context:
space:
mode:
authorBart Van Assche <bvanassche@acm.org>2020-03-13 21:31:02 +0100
committerMartin K. Petersen <martin.petersen@oracle.com>2020-03-17 03:08:36 +0100
commit3cef59481a1f57762eee15b0ebcd344278353c65 (patch)
treeab10842a9da7c26cf4a9e194cf5635ad4dd8bfe3 /drivers/scsi/scsi_trace.c
parentscsi: st: Use get_unaligned_be24() and sign_extend32() (diff)
downloadlinux-3cef59481a1f57762eee15b0ebcd344278353c65.tar.xz
linux-3cef59481a1f57762eee15b0ebcd344278353c65.zip
scsi: scsi_trace: Use get_unaligned_be24()
This makes the SCSI tracing code slightly easier to read. Link: https://lore.kernel.org/r/20200313203102.16613-6-bvanassche@acm.org Fixes: bf8162354233 ("[SCSI] add scsi trace core functions and put trace points") Cc: Christoph Hellwig <hch@lst.de> Cc: James E.J. Bottomley <jejb@linux.ibm.com> Cc: Martin K. Petersen <martin.petersen@oracle.com> Reported-by: Colin Ian King <colin.king@canonical.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Bart Van Assche <bvanassche@acm.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/scsi_trace.c')
-rw-r--r--drivers/scsi/scsi_trace.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/scsi/scsi_trace.c b/drivers/scsi/scsi_trace.c
index ac35c301c792..41a950075913 100644
--- a/drivers/scsi/scsi_trace.c
+++ b/drivers/scsi/scsi_trace.c
@@ -18,11 +18,9 @@ static const char *
scsi_trace_rw6(struct trace_seq *p, unsigned char *cdb, int len)
{
const char *ret = trace_seq_buffer_ptr(p);
- u32 lba = 0, txlen;
+ u32 lba, txlen;
- lba |= ((cdb[1] & 0x1F) << 16);
- lba |= (cdb[2] << 8);
- lba |= cdb[3];
+ lba = get_unaligned_be24(&cdb[1]) & 0x1fffff;
/*
* From SBC-2: a TRANSFER LENGTH field set to zero specifies that 256
* logical blocks shall be read (READ(6)) or written (WRITE(6)).