2023-11-17 08:02:34

by Kunwu Chan

[permalink] [raw]
Subject: [PATCH] scsi: qedi: Fix an endian bug in qedi_ring_doorbell

drivers/scsi/qedi/qedi_fw.c:932:40: sparse: sparse: incorrect type in
assignment (different base types) expected restricted __le16
[usertype] sq_prod got unsigned short [usertype] fw_sq_prod_idx

Cc: [email protected]
Reported-by: kernel test robot <[email protected]>
Closes: https://lore.kernel.org/r/[email protected]/
Signed-off-by: Kunwu Chan <[email protected]>
---
drivers/scsi/qedi/qedi_fw.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/scsi/qedi/qedi_fw.c b/drivers/scsi/qedi/qedi_fw.c
index 6901738324da..72da9dce4e6f 100644
--- a/drivers/scsi/qedi/qedi_fw.c
+++ b/drivers/scsi/qedi/qedi_fw.c
@@ -922,7 +922,7 @@ void qedi_fp_process_cqes(struct qedi_work *work)

static void qedi_ring_doorbell(struct qedi_conn *qedi_conn)
{
- qedi_conn->ep->db_data.sq_prod = qedi_conn->ep->fw_sq_prod_idx;
+ qedi_conn->ep->db_data.sq_prod = cpu_to_le16(qedi_conn->ep->fw_sq_prod_idx);

/* wmb - Make sure fw idx is coherent */
wmb();
--
2.34.1