During cleanup, only send releases for events app was not able to enqueue. Current code is sending releases for entire dequeue burst.
Fixes: f0b68c0b2af7 ("app/eventdev: clean up worker state before exit") Cc: sta...@dpdk.org Signed-off-by: Pravin Pathak <pravin.pat...@intel.com> --- app/test-eventdev/test_perf_common.c | 4 ++-- app/test-eventdev/test_pipeline_common.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/app/test-eventdev/test_perf_common.c b/app/test-eventdev/test_perf_common.c index 4709de8b07..f77557e765 100644 --- a/app/test-eventdev/test_perf_common.c +++ b/app/test-eventdev/test_perf_common.c @@ -1833,9 +1833,9 @@ perf_worker_cleanup(struct rte_mempool *const pool, uint8_t dev_id, for (i = nb_enq; i < nb_deq; i++) rte_mempool_put(pool, events[i].event_ptr); - for (i = 0; i < nb_deq; i++) + for (i = nb_enq; i < nb_deq; i++) events[i].op = RTE_EVENT_OP_RELEASE; - rte_event_enqueue_burst(dev_id, port_id, events, nb_deq); + rte_event_enqueue_burst(dev_id, port_id, events + nb_enq, nb_deq - nb_enq); } rte_event_port_quiesce(dev_id, port_id, perf_event_port_flush, pool); } diff --git a/app/test-eventdev/test_pipeline_common.c b/app/test-eventdev/test_pipeline_common.c index 204117ef7f..c1382ac188 100644 --- a/app/test-eventdev/test_pipeline_common.c +++ b/app/test-eventdev/test_pipeline_common.c @@ -684,10 +684,10 @@ pipeline_worker_cleanup(uint8_t dev, uint8_t port, struct rte_event ev[], rte_pktmbuf_free(ev[i].mbuf); } - for (i = 0; i < deq; i++) + for (i = enq; i < deq; i++) ev[i].op = RTE_EVENT_OP_RELEASE; - rte_event_enqueue_burst(dev, port, ev, deq); + rte_event_enqueue_burst(dev, port, ev + enq, deq - enq); } rte_event_port_quiesce(dev, port, pipeline_event_port_flush, NULL); -- 2.39.1