Prefer the existing apis rather than direct access lcore_config that is going to disappear.
Fixes: b87089b0bb19 ("test/rcu: add API and functional tests") Cc: sta...@dpdk.org Signed-off-by: David Marchand <david.march...@redhat.com> Reviewed-by: Maxime Coquelin <maxime.coque...@redhat.com> Acked-by: Honnappa Nagarahalli <honnappa.nagaraha...@arm.com> --- app/test/test_rcu_qsbr.c | 22 ++++++++++------------ app/test/test_rcu_qsbr_perf.c | 12 ++++-------- 2 files changed, 14 insertions(+), 20 deletions(-) diff --git a/app/test/test_rcu_qsbr.c b/app/test/test_rcu_qsbr.c index ed6934a..92ab0c2 100644 --- a/app/test/test_rcu_qsbr.c +++ b/app/test/test_rcu_qsbr.c @@ -853,11 +853,10 @@ hash_data[0][6] = NULL; writer_done = 1; - /* Wait until all readers have exited */ - rte_eal_mp_wait_lcore(); - /* Check return value from threads */ + + /* Wait and check return value from reader threads */ for (i = 0; i < 4; i++) - if (lcore_config[enabled_core_ids[i]].ret < 0) + if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0) goto error; rte_hash_free(h[0]); rte_free(keys); @@ -913,17 +912,16 @@ rte_eal_remote_launch(test_rcu_qsbr_writer, (void *)(uintptr_t)(i - (test_cores / 2)), enabled_core_ids[i]); - /* Wait for writers to complete */ + /* Wait and check return value from writer threads */ for (i = test_cores / 2; i < test_cores; i++) - rte_eal_wait_lcore(enabled_core_ids[i]); + if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0) + goto error; writer_done = 1; - /* Wait for readers to complete */ - rte_eal_mp_wait_lcore(); - /* Check return value from threads */ - for (i = 0; i < test_cores; i++) - if (lcore_config[enabled_core_ids[i]].ret < 0) + /* Wait and check return value from reader threads */ + for (i = 0; i < test_cores / 2; i++) + if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0) goto error; for (i = 0; i < num_cores / 4; i++) @@ -935,7 +933,7 @@ error: writer_done = 1; - /* Wait until all readers have exited */ + /* Wait until all readers and writers have exited */ rte_eal_mp_wait_lcore(); for (i = 0; i < num_cores / 4; i++) diff --git a/app/test/test_rcu_qsbr_perf.c b/app/test/test_rcu_qsbr_perf.c index 16a43f8..6b1912c 100644 --- a/app/test/test_rcu_qsbr_perf.c +++ b/app/test/test_rcu_qsbr_perf.c @@ -473,11 +473,9 @@ writer_done = 1; - /* Wait until all readers have exited */ - rte_eal_mp_wait_lcore(); - /* Check return value from threads */ + /* Wait and check return value from reader threads */ for (i = 0; i < num_cores; i++) - if (lcore_config[enabled_core_ids[i]].ret < 0) + if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0) goto error; rte_hash_free(h[0]); rte_free(keys); @@ -587,11 +585,9 @@ rte_atomic64_add(&checks, i); writer_done = 1; - /* Wait until all readers have exited */ - rte_eal_mp_wait_lcore(); - /* Check return value from threads */ + /* Wait and check return value from reader threads */ for (i = 0; i < num_cores; i++) - if (lcore_config[enabled_core_ids[i]].ret < 0) + if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0) goto error; rte_hash_free(h[0]); rte_free(keys); -- 1.8.3.1