[PATCH] RDMA/bng_re: fix variable dereferenced before check in bng_re_net_ring_free()

From: sunliming

Date: Tue Jan 06 2026 - 07:04:53 EST


From: sunliming <sunliming@xxxxxxxxxx>

Fix below smatch warnings:
drivers/infiniband/hw/bng_re/bng_dev.c:113 bng_re_net_ring_free() warn:
variable dereferenced before check 'rdev'

Reported-by: kernel test robot <lkp@xxxxxxxxx>
Reported-by: Dan Carpenter <error27@xxxxxxxxx>
Closes: https://lore.kernel.org/r/202601010413.sWadrQel-lkp@xxxxxxxxx/
Signed-off-by: sunliming <sunliming@xxxxxxxxxx>
---
drivers/infiniband/hw/bng_re/bng_dev.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/infiniband/hw/bng_re/bng_dev.c b/drivers/infiniband/hw/bng_re/bng_dev.c
index d8f8d7f7075f..c32395d1593f 100644
--- a/drivers/infiniband/hw/bng_re/bng_dev.c
+++ b/drivers/infiniband/hw/bng_re/bng_dev.c
@@ -118,7 +118,7 @@ static void bng_re_fill_fw_msg(struct bnge_fw_msg *fw_msg, void *msg,
static int bng_re_net_ring_free(struct bng_re_dev *rdev,
u16 fw_ring_id, int type)
{
- struct bnge_auxr_dev *aux_dev = rdev->aux_dev;
+ struct bnge_auxr_dev *aux_dev;
struct hwrm_ring_free_input req = {};
struct hwrm_ring_free_output resp;
struct bnge_fw_msg fw_msg = {};
@@ -127,6 +127,7 @@ static int bng_re_net_ring_free(struct bng_re_dev *rdev,
if (!rdev)
return rc;

+ aux_dev = rdev->aux_dev;
if (!aux_dev)
return rc;

--
2.25.1