All the cores use the same argument object, so there is no need to use a loop to launch the test on every core one by one. Replace loop with one call to rte_eal_mp_remote_launch
Signed-off-by: Steven Lariau <steven.lar...@arm.com> Reviewed-by: Dharmik Thakkar <dharmik.thak...@arm.com> Reviewed-by: Phil Yang <phil.y...@arm.com> Reviewed-by: Ruifeng Wang <ruifeng.w...@arm.com> --- app/test/test_stack.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/app/test/test_stack.c b/app/test/test_stack.c index 5a7273a7d..c100d9faf 100644 --- a/app/test/test_stack.c +++ b/app/test/test_stack.c @@ -322,7 +322,6 @@ static int test_stack_multithreaded(uint32_t flags) { struct test_args args; - unsigned int lcore_id; struct rte_stack *s; rte_atomic64_t size; @@ -345,14 +344,8 @@ test_stack_multithreaded(uint32_t flags) args.s = s; args.sz = &size; - RTE_LCORE_FOREACH_SLAVE(lcore_id) { - if (rte_eal_remote_launch(stack_thread_push_pop, - &args, lcore_id)) - rte_panic("Failed to launch lcore %d\n", lcore_id); - } - - stack_thread_push_pop(&args); - + if (rte_eal_mp_remote_launch(stack_thread_push_pop, &args, CALL_MASTER)) + rte_panic("Failed to launch tests\n"); rte_eal_mp_wait_lcore(); rte_stack_free(s); -- 2.17.1