[dpdk-dev] [PATCH] app: fix redundant comparison

Min Hu (Connor) humin29 at huawei.com
Sat Jul 24 02:35:30 CEST 2021


Agreed, This patch can be rejected, thanks.

在 2021/7/24 4:16, Andrew Rybchenko 写道:
> On 4/19/21 3:44 PM, David Hunt wrote:
>> Hi Connor,
>>
>> On 19/4/2021 1:29 PM, Min Hu (Connor) wrote:
>>> The return value of 'rte_eal_cleanup' is always zero, so comparison
>>> with zero is redundant.
>>>
>>> This patch fixed it by deleting the redundant comparison.
>>>
>>> Fixes: 67684d1e87b6 ("app/procinfo: call EAL cleanup before exit")
>>> Fixes: b68a82425da4 ("app/compress-perf: add performance measurement")
>>> Fixes: 5e516c89830a ("app/testpmd: call cleanup on exit")
>>> Fixes: 613ce6691c0d ("examples/l3fwd-power: implement proper shutdown")
>>> Fixes: 48be180de631 ("eal: move OS common debug functions to single 
>>> file")
>>> Cc: stable at dpdk.org
>>>
>>> Signed-off-by: Min Hu (Connor) <humin29 at huawei.com>
>>> ---
>>>   app/pdump/main.c                         | 4 +---
>>>   app/proc-info/main.c                     | 4 +---
>>>   app/test-compress-perf/main.c            | 7 +------
>>>   app/test-pmd/testpmd.c                   | 5 +----
>>>   examples/l3fwd-power/main.c              | 3 +--
>>>   lib/librte_eal/common/eal_common_debug.c | 4 +---
>>>   6 files changed, 6 insertions(+), 21 deletions(-)
>>>
>>> diff --git a/app/pdump/main.c b/app/pdump/main.c
>>> index 63bbe65..33523c5 100644
>>> --- a/app/pdump/main.c
>>> +++ b/app/pdump/main.c
>>> @@ -1014,9 +1014,7 @@ main(int argc, char **argv)
>>>       /* dump debug stats */
>>>       print_pdump_stats();
>>> -    ret = rte_eal_cleanup();
>>> -    if (ret)
>>> -        printf("Error from rte_eal_cleanup(), %d\n", ret);
>>> +    rte_eal_cleanup();
>>>       return 0;
>>>   }
>>> diff --git a/app/proc-info/main.c b/app/proc-info/main.c
>>> index b9587f7..9498490 100644
>>> --- a/app/proc-info/main.c
>>> +++ b/app/proc-info/main.c
>>> @@ -1458,9 +1458,7 @@ main(int argc, char **argv)
>>>       RTE_ETH_FOREACH_DEV(i)
>>>           rte_eth_dev_close(i);
>>> -    ret = rte_eal_cleanup();
>>> -    if (ret)
>>> -        printf("Error from rte_eal_cleanup(), %d\n", ret);
>>> +    rte_eal_cleanup();
>>>       return 0;
>>>   }
>>> diff --git a/app/test-compress-perf/main.c 
>>> b/app/test-compress-perf/main.c
>>> index cc9951a..03ee385 100644
>>> --- a/app/test-compress-perf/main.c
>>> +++ b/app/test-compress-perf/main.c
>>> @@ -474,12 +474,7 @@ main(int argc, char **argv)
>>>           /* fallthrough */
>>>       case ST_CLEAR:
>>>       default:
>>> -        i = rte_eal_cleanup();
>>> -        if (i) {
>>> -            RTE_LOG(ERR, USER1,
>>> -                "Error from rte_eal_cleanup(), %d\n", i);
>>> -            ret = i;
>>> -        }
>>> +        rte_eal_cleanup();
>>>           break;
>>>       }
>>>       return ret;
>>> diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
>>> index d4be23f..1f8a7b8 100644
>>> --- a/app/test-pmd/testpmd.c
>>> +++ b/app/test-pmd/testpmd.c
>>> @@ -3972,10 +3972,7 @@ main(int argc, char** argv)
>>>               return 1;
>>>       }
>>> -    ret = rte_eal_cleanup();
>>> -    if (ret != 0)
>>> -        rte_exit(EXIT_FAILURE,
>>> -             "EAL cleanup failed: %s\n", strerror(-ret));
>>> +    rte_eal_cleanup();
>>>       return EXIT_SUCCESS;
>>>   }
>>> diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
>>> index 0af8810..84464d5 100644
>>> --- a/examples/l3fwd-power/main.c
>>> +++ b/examples/l3fwd-power/main.c
>>> @@ -2914,8 +2914,7 @@ main(int argc, char **argv)
>>>               deinit_power_library())
>>>           rte_exit(EXIT_FAILURE, "deinit_power_library failed\n");
>>> -    if (rte_eal_cleanup() < 0)
>>> -        RTE_LOG(ERR, L3FWD_POWER, "EAL cleanup failed\n");
>>> +    rte_eal_cleanup();
>>>       return 0;
>>>   }
>>> diff --git a/lib/librte_eal/common/eal_common_debug.c 
>>> b/lib/librte_eal/common/eal_common_debug.c
>>> index 15418e9..04b1fed 100644
>>> --- a/lib/librte_eal/common/eal_common_debug.c
>>> +++ b/lib/librte_eal/common/eal_common_debug.c
>>> @@ -37,8 +37,6 @@ rte_exit(int exit_code, const char *format, ...)
>>>       rte_vlog(RTE_LOG_CRIT, RTE_LOGTYPE_EAL, format, ap);
>>>       va_end(ap);
>>> -    if (rte_eal_cleanup() != 0)
>>> -        RTE_LOG(CRIT, EAL,
>>> -            "EAL could not release all resources\n");
>>> +    rte_eal_cleanup();
>>>       exit(exit_code);
>>>   }
>>
>>
>> Since the function is defined as "int rte_eal_cleanup(void)" and the 
>> documentation says:
>>
>>   *  - 0 Successfully released all internal EAL resources.
>>   *  - -EFAULT There was an error in releasing all resources.
>>
>> We really should check for non zero values. Just because it's 
>> currently coded to only return zero may not hold in the future. The 
>> code may change in the future to return non-zero values.
> 
> +1
> 
> I think the patch should be rejected.
> .


More information about the dev mailing list