[dpdk-dev] [PATCH] failsafe: skip devargs if not present in secondary
Gaëtan Rivet
gaetan.rivet at 6wind.com
Mon Jun 24 18:27:41 CEST 2019
On Mon, Jun 24, 2019 at 08:23:38AM -0700, Stephen Hemminger wrote:
> On Mon, 24 Jun 2019 10:15:58 +0200
> Gaëtan Rivet <gaetan.rivet at 6wind.com> wrote:
>
> > Hello Stephen,
> >
> > On Fri, Jun 21, 2019 at 03:08:24PM -0700, Stephen Hemminger wrote:
> > > When secondary process is run was noticing that the log always
> > > contained complaints about unable to parse devargs.
> > >
> > > It turns out that an empty devargs turns into "" and this
> > > value is not parsable. Change the failsafe secondary to just
> > > skip doing devargs if it empty.
> > >
> >
> > Commit log needs a little rework, a few typos.
> >
> > > Signed-off-by: Stephen Hemminger <stephen at networkplumber.org>
> > > ---
> > > drivers/net/failsafe/failsafe.c | 4 ++++
> > > 1 file changed, 4 insertions(+)
> > >
> > > diff --git a/drivers/net/failsafe/failsafe.c b/drivers/net/failsafe/failsafe.c
> > > index e91c274d8059..04ca0cab0d78 100644
> > > --- a/drivers/net/failsafe/failsafe.c
> > > +++ b/drivers/net/failsafe/failsafe.c
> > > @@ -364,6 +364,10 @@ rte_pmd_failsafe_probe(struct rte_vdev_device *vdev)
> > > * A sub-device can be plugged later.
> > > */
> > > FOREACH_SUBDEV(sdev, i, eth_dev) {
> > > + /* skip empty devargs */
> > > + if (sdev->devargs.name[0] == '\0')
> > > + continue;
> > > +
> >
> > An empty devargs being named "" is part of the internals of rte_devargs.
> > The clean solution would be to add a `bool rte_devargs_empty()` function
> > and test the devargs with it.
> >
> > The simple solution is your proposition.
> >
> > Clean seems a little heavy-handed, but it would be more stable. If you
> > agree, you can add the helper. I'm ok with keeping it simple otherwise.
> >
> > > /* rebuild devargs to be able to get the bus name. */
> > > ret = rte_devargs_parse(&devargs,
> > > sdev->devargs.name);
> > > --
> > > 2.20.1
> > >
> >
>
> Simpler is better.
Ok
> Sorry, after working with failsafe my impression is that it is not
> built with that in mind.
--
Gaëtan Rivet
6WIND
More information about the dev
mailing list