[PATCH v0 1/1] net/octeon_ep: handle interrupt enable failure

Vamsi Krishna vattunuru at marvell.com
Mon Jul 14 07:31:50 CEST 2025


From: Vamsi Attunuru <vattunuru at marvell.com>

Patch checks the return value of interrupt enable
and returns gracefully if file handler is not available.

Cc: stable at dpdk.org

Signed-off-by: Vamsi Attunuru <vattunuru at marvell.com>
---
 drivers/net/octeon_ep/otx_ep_mbox.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/net/octeon_ep/otx_ep_mbox.c b/drivers/net/octeon_ep/otx_ep_mbox.c
index 1d7e08d2cc..c83bb81474 100644
--- a/drivers/net/octeon_ep/otx_ep_mbox.c
+++ b/drivers/net/octeon_ep/otx_ep_mbox.c
@@ -355,16 +355,22 @@ otx_ep_mbox_init(struct rte_eth_dev *eth_dev)
 	struct otx_ep_device *otx_ep = (struct otx_ep_device *)eth_dev->data->dev_private;
 	struct rte_pci_device *pdev = RTE_ETH_DEV_TO_PCI(eth_dev);
 	uint64_t reg_val;
+	int rc;
 
 	otx_ep_mbox_version_check(otx_ep);
 
 	rte_intr_callback_register(pdev->intr_handle, otx_ep_mbox_intr_handler, (void *)eth_dev);
 
-	if (rte_intr_enable(pdev->intr_handle)) {
+	rc = rte_intr_enable(pdev->intr_handle);
+
+	if (!(rc == -1 || rc == 0)) {
 		otx_ep_err("rte_intr_enable failed");
 		return -1;
 	}
 
+	if (rc == -1)
+		return 0;
+
 	reg_val = otx2_read64(otx_ep->hw_addr + CNXK_EP_R_MBOX_PF_VF_INT(0));
 	if (reg_val == UINT64_MAX)
 		return -ENODEV;
-- 
2.34.1



More information about the dev mailing list