Skip to content

Commit 0be7592

Browse files
njavalimartinkpetersen
authored andcommitted
scsi: qla2xxx: Correct endianness for rqstlen and rsplen
rqstlen and rsplen were changed to __le32 to fix sparse warnings: drivers/scsi/qla2xxx/qla_nvme.c:402:30: warning: incorrect type in assignment (different base types) drivers/scsi/qla2xxx/qla_nvme.c:402:30: expected restricted __le32 [usertype] cmd_len drivers/scsi/qla2xxx/qla_nvme.c:402:30: got unsigned short [usertype] rsplen drivers/scsi/qla2xxx/qla_nvme.c:507:30: warning: incorrect type in assignment (different base types) drivers/scsi/qla2xxx/qla_nvme.c:507:30: expected restricted __le32 [usertype] cmd_len drivers/scsi/qla2xxx/qla_nvme.c:507:30: got unsigned int [usertype] rqstlen drivers/scsi/qla2xxx/qla_nvme.c:508:30: warning: incorrect type in assignment (different base types) drivers/scsi/qla2xxx/qla_nvme.c:508:30: expected restricted __le32 [usertype] rsp_len drivers/scsi/qla2xxx/qla_nvme.c:508:30: got unsigned int [usertype] rsplen Correct the endianness in qla2xxx driver thus avoiding changes in nvme-fc-driver.h. Fixes: 875386b ("scsi: qla2xxx: Add Unsolicited LS Request and Response Support for NVMe") Signed-off-by: Nilesh Javali <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Martin K. Petersen <[email protected]>
1 parent 31a0865 commit 0be7592

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

drivers/scsi/qla2xxx/qla_nvme.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -399,14 +399,14 @@ static int qla_nvme_xmt_ls_rsp(struct nvme_fc_local_port *lport,
399399
nvme->u.nvme.dl = 0;
400400
nvme->u.nvme.timeout_sec = 0;
401401
nvme->u.nvme.cmd_dma = fd_resp->rspdma;
402-
nvme->u.nvme.cmd_len = fd_resp->rsplen;
402+
nvme->u.nvme.cmd_len = cpu_to_le32(fd_resp->rsplen);
403403
nvme->u.nvme.rsp_len = 0;
404404
nvme->u.nvme.rsp_dma = 0;
405405
nvme->u.nvme.exchange_address = uctx->exchange_address;
406406
nvme->u.nvme.nport_handle = uctx->nport_handle;
407407
nvme->u.nvme.ox_id = uctx->ox_id;
408408
dma_sync_single_for_device(&ha->pdev->dev, nvme->u.nvme.cmd_dma,
409-
le32_to_cpu(fd_resp->rsplen), DMA_TO_DEVICE);
409+
fd_resp->rsplen, DMA_TO_DEVICE);
410410

411411
ql_dbg(ql_dbg_unsol, vha, 0x2122,
412412
"Unsol lsreq portid=%06x %8phC exchange_address 0x%x ox_id 0x%x hdl 0x%x\n",
@@ -504,13 +504,13 @@ static int qla_nvme_ls_req(struct nvme_fc_local_port *lport,
504504
nvme->u.nvme.desc = fd;
505505
nvme->u.nvme.dir = 0;
506506
nvme->u.nvme.dl = 0;
507-
nvme->u.nvme.cmd_len = fd->rqstlen;
508-
nvme->u.nvme.rsp_len = fd->rsplen;
507+
nvme->u.nvme.cmd_len = cpu_to_le32(fd->rqstlen);
508+
nvme->u.nvme.rsp_len = cpu_to_le32(fd->rsplen);
509509
nvme->u.nvme.rsp_dma = fd->rspdma;
510510
nvme->u.nvme.timeout_sec = fd->timeout;
511511
nvme->u.nvme.cmd_dma = fd->rqstdma;
512512
dma_sync_single_for_device(&ha->pdev->dev, nvme->u.nvme.cmd_dma,
513-
le32_to_cpu(fd->rqstlen), DMA_TO_DEVICE);
513+
fd->rqstlen, DMA_TO_DEVICE);
514514

515515
rval = qla2x00_start_sp(sp);
516516
if (rval != QLA_SUCCESS) {

include/linux/nvme-fc-driver.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,10 +53,10 @@
5353
struct nvmefc_ls_req {
5454
void *rqstaddr;
5555
dma_addr_t rqstdma;
56-
__le32 rqstlen;
56+
u32 rqstlen;
5757
void *rspaddr;
5858
dma_addr_t rspdma;
59-
__le32 rsplen;
59+
u32 rsplen;
6060
u32 timeout;
6161

6262
void *private;
@@ -120,7 +120,7 @@ struct nvmefc_ls_req {
120120
struct nvmefc_ls_rsp {
121121
void *rspbuf;
122122
dma_addr_t rspdma;
123-
__le32 rsplen;
123+
u16 rsplen;
124124

125125
void (*done)(struct nvmefc_ls_rsp *rsp);
126126
void *nvme_fc_private; /* LLDD is not to access !! */

0 commit comments

Comments
 (0)