[v2,3/4] test/lpm: remove error checking in rcu qsbr perf
Checks
Commit Message
Remove redundant error checking for reader threads
since they never return error.
Fixes: eff30b59cc2e ("test/lpm: add RCU performance tests")
Cc: honnappa.nagarahalli@arm.com
Cc: stable@dpdk.org
Signed-off-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
---
app/test/test_lpm_perf.c | 21 ++++++++-------------
1 file changed, 8 insertions(+), 13 deletions(-)
Comments
<snip>
>
> Remove redundant error checking for reader threads since they never return
> error.
>
> Fixes: eff30b59cc2e ("test/lpm: add RCU performance tests")
> Cc: honnappa.nagarahalli@arm.com
> Cc: stable@dpdk.org
>
> Signed-off-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
> ---
> app/test/test_lpm_perf.c | 21 ++++++++-------------
> 1 file changed, 8 insertions(+), 13 deletions(-)
>
> diff --git a/app/test/test_lpm_perf.c b/app/test/test_lpm_perf.c index
> 55084816ab91..224c92fa3d65 100644
> --- a/app/test/test_lpm_perf.c
> +++ b/app/test/test_lpm_perf.c
> @@ -554,11 +554,10 @@ test_lpm_rcu_perf_multi_writer(void)
> __atomic_load_n(&gwrite_cycles, __ATOMIC_RELAXED)
> / TOTAL_WRITES);
>
> - /* Wait and check return value from reader threads */
> writer_done = 1;
> + /* Wait until all readers have exited */
> for (i = 2; i < num_cores; i++)
> - if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
> - goto error;
> + rte_eal_wait_lcore(enabled_core_ids[i]);
>
> rte_lpm_free(lpm);
> rte_free(rv);
> @@ -603,10 +602,9 @@ test_lpm_rcu_perf_multi_writer(void)
> / TOTAL_WRITES);
>
> writer_done = 1;
> - /* Wait and check return value from reader threads */
> + /* Wait until all readers have exited */
> for (i = 2; i < num_cores; i++)
> - if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
> - goto error;
> + rte_eal_wait_lcore(enabled_core_ids[i]);
>
> rte_lpm_free(lpm);
>
> @@ -710,10 +708,9 @@ test_lpm_rcu_perf(void)
> (double)total_cycles / TOTAL_WRITES);
>
> writer_done = 1;
> - /* Wait and check return value from reader threads */
> + /* Wait until all readers have exited */
> for (i = 0; i < num_cores; i++)
> - if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
> - goto error;
> + if (rte_eal_wait_lcore(enabled_core_ids[i]);
^^ Do we need the 'if' statement?
>
> rte_lpm_free(lpm);
> rte_free(rv);
> @@ -769,11 +766,9 @@ test_lpm_rcu_perf(void)
> (double)total_cycles / TOTAL_WRITES);
>
> writer_done = 1;
> - /* Wait and check return value from reader threads */
> + /* Wait until all readers have exited */
> for (i = 0; i < num_cores; i++)
> - if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
> - printf("Warning: lcore %u not finished.\n",
> - enabled_core_ids[i]);
> + rte_eal_wait_lcore(enabled_core_ids[i]);
>
> rte_lpm_free(lpm);
>
> --
> 2.17.1
> On Nov 2, 2020, at 7:21 PM, Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com> wrote:
>
> <snip>
>
>>
>> Remove redundant error checking for reader threads since they never return
>> error.
>>
>> Fixes: eff30b59cc2e ("test/lpm: add RCU performance tests")
>> Cc: honnappa.nagarahalli@arm.com
>> Cc: stable@dpdk.org
>>
>> Signed-off-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
>> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
>> ---
>> app/test/test_lpm_perf.c | 21 ++++++++-------------
>> 1 file changed, 8 insertions(+), 13 deletions(-)
>>
>> diff --git a/app/test/test_lpm_perf.c b/app/test/test_lpm_perf.c index
>> 55084816ab91..224c92fa3d65 100644
>> --- a/app/test/test_lpm_perf.c
>> +++ b/app/test/test_lpm_perf.c
>> @@ -554,11 +554,10 @@ test_lpm_rcu_perf_multi_writer(void)
>> __atomic_load_n(&gwrite_cycles, __ATOMIC_RELAXED)
>> / TOTAL_WRITES);
>>
>> - /* Wait and check return value from reader threads */
>> writer_done = 1;
>> + /* Wait until all readers have exited */
>> for (i = 2; i < num_cores; i++)
>> - if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
>> - goto error;
>> + rte_eal_wait_lcore(enabled_core_ids[i]);
>>
>> rte_lpm_free(lpm);
>> rte_free(rv);
>> @@ -603,10 +602,9 @@ test_lpm_rcu_perf_multi_writer(void)
>> / TOTAL_WRITES);
>>
>> writer_done = 1;
>> - /* Wait and check return value from reader threads */
>> + /* Wait until all readers have exited */
>> for (i = 2; i < num_cores; i++)
>> - if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
>> - goto error;
>> + rte_eal_wait_lcore(enabled_core_ids[i]);
>>
>> rte_lpm_free(lpm);
>>
>> @@ -710,10 +708,9 @@ test_lpm_rcu_perf(void)
>> (double)total_cycles / TOTAL_WRITES);
>>
>> writer_done = 1;
>> - /* Wait and check return value from reader threads */
>> + /* Wait until all readers have exited */
>> for (i = 0; i < num_cores; i++)
>> - if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
>> - goto error;
>> + if (rte_eal_wait_lcore(enabled_core_ids[i]);
> ^^ Do we need the 'if' statement?
No, will remove in the next version.
>>
>> rte_lpm_free(lpm);
>> rte_free(rv);
>> @@ -769,11 +766,9 @@ test_lpm_rcu_perf(void)
>> (double)total_cycles / TOTAL_WRITES);
>>
>> writer_done = 1;
>> - /* Wait and check return value from reader threads */
>> + /* Wait until all readers have exited */
>> for (i = 0; i < num_cores; i++)
>> - if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
>> - printf("Warning: lcore %u not finished.\n",
>> - enabled_core_ids[i]);
>> + rte_eal_wait_lcore(enabled_core_ids[i]);
>>
>> rte_lpm_free(lpm);
>>
>> --
>> 2.17.1
@@ -554,11 +554,10 @@ test_lpm_rcu_perf_multi_writer(void)
__atomic_load_n(&gwrite_cycles, __ATOMIC_RELAXED)
/ TOTAL_WRITES);
- /* Wait and check return value from reader threads */
writer_done = 1;
+ /* Wait until all readers have exited */
for (i = 2; i < num_cores; i++)
- if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
- goto error;
+ rte_eal_wait_lcore(enabled_core_ids[i]);
rte_lpm_free(lpm);
rte_free(rv);
@@ -603,10 +602,9 @@ test_lpm_rcu_perf_multi_writer(void)
/ TOTAL_WRITES);
writer_done = 1;
- /* Wait and check return value from reader threads */
+ /* Wait until all readers have exited */
for (i = 2; i < num_cores; i++)
- if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
- goto error;
+ rte_eal_wait_lcore(enabled_core_ids[i]);
rte_lpm_free(lpm);
@@ -710,10 +708,9 @@ test_lpm_rcu_perf(void)
(double)total_cycles / TOTAL_WRITES);
writer_done = 1;
- /* Wait and check return value from reader threads */
+ /* Wait until all readers have exited */
for (i = 0; i < num_cores; i++)
- if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
- goto error;
+ if (rte_eal_wait_lcore(enabled_core_ids[i]);
rte_lpm_free(lpm);
rte_free(rv);
@@ -769,11 +766,9 @@ test_lpm_rcu_perf(void)
(double)total_cycles / TOTAL_WRITES);
writer_done = 1;
- /* Wait and check return value from reader threads */
+ /* Wait until all readers have exited */
for (i = 0; i < num_cores; i++)
- if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
- printf("Warning: lcore %u not finished.\n",
- enabled_core_ids[i]);
+ rte_eal_wait_lcore(enabled_core_ids[i]);
rte_lpm_free(lpm);