This commit ensures that after an lcore is added, that it is in the WAIT state. Previously, adding an lcore did not ensure that the core was ready for being relaunch, which would cause errors during lcore_start(). Now that the lcore is ensured to be in WAIT state by the lcore_add() function, this is no longer an issue.
Fixes: 21698354c832 ("service: introduce service cores concept") Signed-off-by: Harry van Haaren <harry.van.haa...@intel.com> --- lib/librte_eal/common/rte_service.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/librte_eal/common/rte_service.c b/lib/librte_eal/common/rte_service.c index 4034130..789f63b 100644 --- a/lib/librte_eal/common/rte_service.c +++ b/lib/librte_eal/common/rte_service.c @@ -537,7 +537,8 @@ rte_service_lcore_add(uint32_t lcore) lcore_states[lcore].runstate = RUNSTATE_STOPPED; rte_smp_wmb(); - return 0; + + return rte_eal_wait_lcore(lcore); } int32_t -- 2.7.4