Looks good to me. Acked-by: Jay Jayatheerthan <[email protected]>
-Jay > -----Original Message----- > From: Naga Harish K, S V <[email protected]> > Sent: Thursday, June 23, 2022 3:35 PM > To: Jayatheerthan, Jay <[email protected]>; [email protected] > Cc: [email protected]; [email protected] > Subject: [PATCH] eventdev/eth_tx: fix queue delete > > Add spinlock protection in queue delete function. > This protects the data path while the queue delete operation > is in progress. > > Fixes: a3bbf2e09756 ("eventdev: add eth Tx adapter implementation") > Cc: [email protected] > > Signed-off-by: Naga Harish K S V <[email protected]> > --- > lib/eventdev/rte_event_eth_tx_adapter.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/lib/eventdev/rte_event_eth_tx_adapter.c > b/lib/eventdev/rte_event_eth_tx_adapter.c > index c700fb7b1f..b4b37f1cae 100644 > --- a/lib/eventdev/rte_event_eth_tx_adapter.c > +++ b/lib/eventdev/rte_event_eth_tx_adapter.c > @@ -891,9 +891,10 @@ txa_service_queue_del(uint8_t id, > > txa = txa_service_id_to_data(id); > > + rte_spinlock_lock(&txa->tx_lock); > tqi = txa_service_queue(txa, port_id, tx_queue_id); > if (tqi == NULL || !tqi->added) > - return 0; > + goto ret_unlock; > > tb = tqi->tx_buf; > tqi->added = 0; > @@ -903,6 +904,9 @@ txa_service_queue_del(uint8_t id, > txa->txa_ethdev[port_id].nb_queues--; > > txa_service_queue_array_free(txa, port_id); > + > +ret_unlock: > + rte_spinlock_unlock(&txa->tx_lock); > return 0; > } > > -- > 2.25.1

