[PATCH] [BUGREPORT] RDMA/bnxt_re: avoid unintialized variable use

From: Arnd Bergmann
Date: Fri Jun 16 2023 - 05:07:54 EST


From: Arnd Bergmann <arnd@xxxxxxxx>

The newly added opcode variable is not initialized anywhere:

drivers/infiniband/hw/bnxt_re/qplib_rcfw.c:322:18: error: variable 'opcode' is uninitialized when used here [-Werror,-Wuninitialized]
crsqe->opcode = opcode;

Not sure what the intention was here, but this is clearly pointless, so
instead use 0 in place of the variable.

Fixes: bcfee4ce3e013 ("RDMA/bnxt_re: remove redundant cmdq_bitmap")
Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
---
This is likely not the correct fix, so treat this as a bug report,
the patch is what I applied as a temporary workaround in my randconfig
tree.
---
drivers/infiniband/hw/bnxt_re/qplib_rcfw.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/infiniband/hw/bnxt_re/qplib_rcfw.c b/drivers/infiniband/hw/bnxt_re/qplib_rcfw.c
index bb5aebafe1622..8d349d6a633fa 100644
--- a/drivers/infiniband/hw/bnxt_re/qplib_rcfw.c
+++ b/drivers/infiniband/hw/bnxt_re/qplib_rcfw.c
@@ -285,7 +285,6 @@ static int __send_message(struct bnxt_qplib_rcfw *rcfw,
struct pci_dev *pdev;
unsigned long flags;
u16 cookie;
- u8 opcode;
u8 *preq;

cmdq = &rcfw->cmdq;
@@ -319,7 +318,7 @@ static int __send_message(struct bnxt_qplib_rcfw *rcfw,
crsqe->is_internal_cmd = false;
crsqe->is_waiter_alive = true;
crsqe->is_in_used = true;
- crsqe->opcode = opcode;
+ crsqe->opcode = 0;

crsqe->req_size = __get_cmdq_base_cmd_size(msg->req, msg->req_sz);
if (__get_cmdq_base_resp_size(msg->req, msg->req_sz) && msg->sb) {
--
2.39.2