From: Feifei Wang Date: Fri, 22 Jan 2021 05:19:16 +0000 (+0800) Subject: app/eventdev: remove redundant enqueue in burst Tx X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=21b1ca4843a09d822cf992872445beb73163f1fb;p=dpdk.git app/eventdev: remove redundant enqueue in burst Tx For eventdev pipeline test, in burst_tx cases, there is no needed to set ev.op as RTE_EVENT_OP_RELEASE and call pipeline_event_enqueue_burst to release events. This is because for tx mode(internal_port=true), the capability "implicit_release" of dev is enabled, and the app can release events by "rte_event_dequeue_burst" rather than enqueue. Fixes: 314bcf58ca8f ("app/eventdev: add pipeline queue worker functions") Cc: stable@dpdk.org Signed-off-by: Feifei Wang Reviewed-by: Ruifeng Wang Acked-by: Jerin Jacob --- diff --git a/app/test-eventdev/test_pipeline_queue.c b/app/test-eventdev/test_pipeline_queue.c index 01f33e3b44..9a9febb199 100644 --- a/app/test-eventdev/test_pipeline_queue.c +++ b/app/test-eventdev/test_pipeline_queue.c @@ -83,16 +83,15 @@ pipeline_queue_worker_single_stage_burst_tx(void *arg) rte_prefetch0(ev[i + 1].mbuf); if (ev[i].sched_type == RTE_SCHED_TYPE_ATOMIC) { pipeline_event_tx(dev, port, &ev[i]); - ev[i].op = RTE_EVENT_OP_RELEASE; w->processed_pkts++; } else { ev[i].queue_id++; pipeline_fwd_event(&ev[i], RTE_SCHED_TYPE_ATOMIC); + pipeline_event_enqueue_burst(dev, port, ev, + nb_rx); } } - - pipeline_event_enqueue_burst(dev, port, ev, nb_rx); } return 0; @@ -213,7 +212,6 @@ pipeline_queue_worker_multi_stage_burst_tx(void *arg) if (ev[i].queue_id == tx_queue[ev[i].mbuf->port]) { pipeline_event_tx(dev, port, &ev[i]); - ev[i].op = RTE_EVENT_OP_RELEASE; w->processed_pkts++; continue; } @@ -222,9 +220,8 @@ pipeline_queue_worker_multi_stage_burst_tx(void *arg) pipeline_fwd_event(&ev[i], cq_id != last_queue ? sched_type_list[cq_id] : RTE_SCHED_TYPE_ATOMIC); + pipeline_event_enqueue_burst(dev, port, ev, nb_rx); } - - pipeline_event_enqueue_burst(dev, port, ev, nb_rx); } return 0;