To delete all the queues of a ethernet device associated with adapter instance the queue_id can be passed as -1 to the queue delete API.
When a subset of queues of a ethernet device are associated, the queue delete logic is exiting without deleting the queues in some cases (higher numbered associated queues) for above scenario as the queue delete logic is not checking all the queue association status. This patch fixes this issue by checking the queue association status of all the queues of the ethernet device. Fixes: 741b499e642 ("eventdev/eth_tx: fix queue delete logic") Cc: sta...@dpdk.org Signed-off-by: Naga Harish K S V <s.v.naga.haris...@intel.com> --- lib/eventdev/rte_event_eth_tx_adapter.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/eventdev/rte_event_eth_tx_adapter.c b/lib/eventdev/rte_event_eth_tx_adapter.c index c2a848103b..f60b7a82ef 100644 --- a/lib/eventdev/rte_event_eth_tx_adapter.c +++ b/lib/eventdev/rte_event_eth_tx_adapter.c @@ -934,7 +934,7 @@ txa_service_queue_del(uint8_t id, uint16_t i, q, nb_queues; int ret = 0; - nb_queues = txa->txa_ethdev[port_id].nb_queues; + nb_queues = txa->txa_ethdev[port_id].dev->data->nb_tx_queues; if (nb_queues == 0) return 0; -- 2.25.1