From f72bff0ec2723b7d7bfc9c655419030b1c8fffad Mon Sep 17 00:00:00 2001 From: Lukasz Wojciechowski Date: Sat, 17 Oct 2020 05:07:01 +0200 Subject: [PATCH] test/distributor: fix quitting workers in burst mode Sending number of packets equal to number of workers isn't enough to stop all workers in burst version of distributor as more than one packet can be matched and consumed by a single worker. This way some of workers might not be awaken from rte_distributor_get_pkt(). This patch fixes it by sending packets one by one. Each sent packet causes exactly one worker to quit. Fixes: 775003ad2f96 ("distributor: add new burst-capable library") Cc: stable@dpdk.org Signed-off-by: Lukasz Wojciechowski Reviewed-by: Honnappa Nagarahalli --- app/test/test_distributor.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/test/test_distributor.c b/app/test/test_distributor.c index a4af0a39c6..e0cb698e1c 100644 --- a/app/test/test_distributor.c +++ b/app/test/test_distributor.c @@ -769,9 +769,10 @@ quit_workers(struct worker_params *wp, struct rte_mempool *p) zero_quit = 0; quit = 1; - for (i = 0; i < num_workers; i++) + for (i = 0; i < num_workers; i++) { bufs[i]->hash.usr = i << 1; - rte_distributor_process(d, bufs, num_workers); + rte_distributor_process(d, &bufs[i], 1); + } rte_distributor_process(d, NULL, 0); rte_distributor_flush(d); -- 2.20.1