[PATCH 2/2] app/dma-perf: fix infinite loop

huangdengdui huangdengdui at huawei.com
Mon Mar 24 04:42:41 CET 2025


On 2025/3/21 23:58, Stephen Hemminger wrote:
> On Fri, 21 Mar 2025 12:03:16 +0800
> Dengdui Huang <huangdengdui at huawei.com> wrote:
> 
>> When a core that is not used by the rte is specified in the config
>> for testing, the problem of infinite loop occurs. The root cause
>> is that the program waits for the completion of the test task when
>> the test worker fails to be started on the lcore. This patch fix it.
>>
>> Fixes: 533d7e7f66f3 ("app/dma-perf: support config per device")
>> Cc: stable at dpdk.org
>>
>> Signed-off-by: Dengdui Huang <huangdengdui at huawei.com>
>> ---
>>  app/test-dma-perf/benchmark.c | 5 ++++-
>>  1 file changed, 4 insertions(+), 1 deletion(-)
>>
>> diff --git a/app/test-dma-perf/benchmark.c b/app/test-dma-perf/benchmark.c
>> index 6d617ea200..351c1c966e 100644
>> --- a/app/test-dma-perf/benchmark.c
>> +++ b/app/test-dma-perf/benchmark.c
>> @@ -751,7 +751,10 @@ mem_copy_benchmark(struct test_configure *cfg)
>>  				goto out;
>>  		}
>>  
>> -		rte_eal_remote_launch(get_work_function(cfg), (void *)(lcores[i]), lcore_id);
>> +		if (rte_eal_remote_launch(get_work_function(cfg), (void *)(lcores[i]), lcore_id)) {
>> +			printf("Error: Fail to start the test on lcore %d\n", lcore_id);
> 
> Convention is to log errors on stderr and lcore_id is unsigned not signed value.

OK, I'll fix it for the next version.


More information about the dev mailing list