[dpdk-dev] [PATCH v2 1/2] eal: create runtime dir even when shared data is not used

Morten Brørup mb at smartsharesystems.com
Fri Jul 2 16:21:35 CEST 2021


> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Bruce Richardson
> Sent: Friday, 2 July 2021 14.56
> To: dev at dpdk.org
> 
> When multi-process is not wanted and DPDK is run with the "no-shconf"
> flag, the telemetry library still needs a runtime directory to place
> the
> unix socket for telemetry connections. Therefore, rather than not
> creating the directory when this flag is set, we can change the code to
> attempt the creation anyway, but not error out if it fails. If it
> succeeds, then telemetry will be available, but if it fails, the rest
> of
> DPDK will run without telemetry. This ensures that the "in-memory" flag
> will allow DPDK to run even if the whole filesystem is read-only, for
> example.
> 
> Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
> ---
> V2: add a warning for the no-shconf case, rather than skipping it
> silently.
> 
>  lib/eal/linux/eal.c | 14 ++++++++------
>  1 file changed, 8 insertions(+), 6 deletions(-)
> 
> diff --git a/lib/eal/linux/eal.c b/lib/eal/linux/eal.c
> index ba19fc6347..ccb7535619 100644
> --- a/lib/eal/linux/eal.c
> +++ b/lib/eal/linux/eal.c
> @@ -838,12 +838,14 @@ eal_parse_args(int argc, char **argv)
>  		}
>  	}
> 
> -	/* create runtime data directory */
> -	if (internal_conf->no_shconf == 0 &&
> -			eal_create_runtime_dir() < 0) {
> -		RTE_LOG(ERR, EAL, "Cannot create runtime directory\n");
> -		ret = -1;
> -		goto out;
> +	/* create runtime data directory. In no_shconf mode, skip any
> errors */
> +	if (eal_create_runtime_dir() < 0) {
> +		if (internal_conf->no_shconf == 0) {
> +			RTE_LOG(ERR, EAL, "Cannot create runtime
> directory\n");
> +			ret = -1;
> +			goto out;
> +		} else
> +			RTE_LOG(WARNING, EAL, "No DPDK runtime directory
> created\n");
>  	}
> 
>  	if (eal_adjust_config(internal_conf) != 0) {
> --
> 2.30.2
> 
Reviewed-by: Morten Brørup <mb at smartsharesystems.com>



More information about the dev mailing list