On Mon, Jul 05, 2021 at 04:11:54PM +0200, David Marchand wrote:
> On Fri, Jul 2, 2021 at 2:56 PM Bruce Richardson
> <bruce.richard...@intel.com> wrote:
> >
> > 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.richard...@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
> >
>
> Should this change be applied to FreeBSD too?
>
> Reviewed-by: David Marchand <david.march...@redhat.com>
>
Yes it should. :-( For some reason I assumed that this would not be relevant
for FreeBSD, but I obviously should have double-checked the code!