[PATCH v5 27/45] net/sxe2: guard Rx queue event FD free in unregister
liujie5 at linkdatatechnology.com
liujie5 at linkdatatechnology.com
Fri Aug 28 05:25:46 CEST 2026
From: Jie Liu <liujie5 at linkdatatechnology.com>
sxe2_rxq_intr_unregister() frees irq_ctxt->rxq_event_fd outside the
rxq_event_fd NULL check. Move the free and NULL assignment inside the
guard so the buffer is only released when it was allocated.
Fixes: 8cebf80f1eda ("net/sxe2: support Rx interrupt")
Cc: stable at dpdk.org
Cc: stephen at networkplumber.org
Signed-off-by: Jie Liu <liujie5 at linkdatatechnology.com>
---
drivers/net/sxe2/sxe2_irq.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/net/sxe2/sxe2_irq.c b/drivers/net/sxe2/sxe2_irq.c
index ba764dd5e4..4e5339e24b 100644
--- a/drivers/net/sxe2/sxe2_irq.c
+++ b/drivers/net/sxe2/sxe2_irq.c
@@ -881,12 +881,11 @@ static void sxe2_rxq_intr_unregister(struct rte_eth_dev *dev)
(void)sxe2_drv_dev_rxq_irq_set(adapter->cdev, i, &efd, 1);
sxe2_rxq_intr_efd_free(irq_ctxt->rxq_event_fd[i]);
}
+ rte_free(irq_ctxt->rxq_event_fd);
+ irq_ctxt->rxq_event_fd = NULL;
}
- rte_free(irq_ctxt->rxq_event_fd);
- irq_ctxt->rxq_event_fd = NULL;
rte_intr_vec_list_free(intr_handle);
-
rte_intr_nb_efd_set(intr_handle, 0);
rte_intr_max_intr_set(intr_handle, 0);
}
--
2.52.0
More information about the dev
mailing list