[PATCH] eventdev/eth_rx: fix return of rx adapter instance get

Shijith Thotton sthotton at marvell.com
Tue Jan 3 14:09:04 CET 2023


The API to get rx adapter instance is returning error for event devices
with internal port capability and eth_rx_adapter_instance_get op
undefined. But as the Rx adapter is internally maintaining the queue
information needed to find the instance id, event devices can opt out
from defining the op. Modified code to match this logic.

Fixes: a1793ee8aba0 ("eventdev/eth_rx: add adapter instance get API")

Signed-off-by: Shijith Thotton <sthotton at marvell.com>
---
 lib/eventdev/rte_event_eth_rx_adapter.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/lib/eventdev/rte_event_eth_rx_adapter.c b/lib/eventdev/rte_event_eth_rx_adapter.c
index cf7bbd4d69..170823a03c 100644
--- a/lib/eventdev/rte_event_eth_rx_adapter.c
+++ b/lib/eventdev/rte_event_eth_rx_adapter.c
@@ -3415,14 +3415,10 @@ rte_event_eth_rx_adapter_instance_get(uint16_t eth_dev_id,
 		if (!rte_event_eth_rx_adapter_caps_get(rx_adapter->eventdev_id,
 						      eth_dev_id,
 						      &caps)) {
-			if (caps & RTE_EVENT_ETH_RX_ADAPTER_CAP_INTERNAL_PORT) {
-				ret = rxa_dev_instance_get(rx_adapter) ?
-						rxa_dev_instance_get(rx_adapter)
-								(eth_dev_id,
-								 rx_queue_id,
-								 rxa_inst_id)
-							: -EINVAL;
-			}
+			if (caps & RTE_EVENT_ETH_RX_ADAPTER_CAP_INTERNAL_PORT &&
+			    rxa_dev_instance_get(rx_adapter))
+				ret = rxa_dev_instance_get(rx_adapter)(eth_dev_id, rx_queue_id,
+								       rxa_inst_id);
 		}
 
 		/* return if entry found */
-- 
2.25.1



More information about the dev mailing list