[PATCH v23 06/15] eal: change rte_exit() output to match rte_log()

fengchengwen fengchengwen at huawei.com
Wed Sep 18 09:23:07 CEST 2024


On 2024/9/18 12:56, Stephen Hemminger wrote:
> The rte_exit() output format confuses the timestamp and coloring
> options. Change it to use be a single line with proper prefix.
> 
> Before:
> [     0.006481] EAL: Error - exiting with code: 1
>   Cause: [     0.006489] Cannot init EAL: Permission denied
> 
> After:
> [     0.006238] EAL: Error - exiting with code: 1
> [     0.006250] EAL: Cause - Cannot init EAL: Permission denied
> 
> Signed-off-by: Stephen Hemminger <stephen at networkplumber.org>
> Acked-by: Tyler Retzlaff <roretzla at linux.microsoft.com>
> Acked-by: Morten Brørup <mb at smartsharesystems.com>
> ---
>  lib/eal/common/eal_common_debug.c | 11 ++++++-----
>  1 file changed, 6 insertions(+), 5 deletions(-)
> 
> diff --git a/lib/eal/common/eal_common_debug.c b/lib/eal/common/eal_common_debug.c
> index 3e77995896..ad2be63cbb 100644
> --- a/lib/eal/common/eal_common_debug.c
> +++ b/lib/eal/common/eal_common_debug.c
> @@ -34,17 +34,18 @@ void
>  rte_exit(int exit_code, const char *format, ...)
>  {
>  	va_list ap;
> +	char msg[256];

the length maybe too short.

>  
>  	if (exit_code != 0)
> -		RTE_LOG(CRIT, EAL, "Error - exiting with code: %d\n"
> -				"  Cause: ", exit_code);
> +		EAL_LOG(CRIT, "Error - exiting with code: %d", exit_code);
>  
>  	va_start(ap, format);
> -	rte_vlog(RTE_LOG_CRIT, RTE_LOGTYPE_EAL, format, ap);
> +	vsnprintf(msg, sizeof(msg), format, ap);

should handle the vsnprintf return negative value.

>  	va_end(ap);
>  
> +	rte_log(RTE_LOG_CRIT, RTE_LOGTYPE_EAL, "EAL: Cause - %s", msg);
> +
>  	if (rte_eal_cleanup() != 0 && rte_errno != EALREADY)
> -		EAL_LOG(CRIT,
> -			"EAL could not release all resources");
> +		EAL_LOG(CRIT, "EAL could not release all resources");
>  	exit(exit_code);
>  }



More information about the dev mailing list