[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190301140346.5c777c12@cakuba.netronome.com>
Date: Fri, 1 Mar 2019 14:03:46 -0800
From: Jakub Kicinski <jakub.kicinski@...ronome.com>
To: Stephen Hemminger <stephen@...workplumber.org>
Cc: Maciej Fijalkowski <maciejromanfijalkowski@...il.com>,
netdev@...r.kernel.org
Subject: Re: [RFC v2 3/6] i40e: use extack for bpf errors
On Fri, 1 Mar 2019 13:55:53 -0800, Stephen Hemminger wrote:
> On Fri, 1 Mar 2019 08:28:49 -0800
> Jakub Kicinski <jakub.kicinski@...ronome.com> wrote:
>
> > On Fri, 1 Mar 2019 12:31:08 +0100, Maciej Fijalkowski wrote:
> > > On Thu, 28 Feb 2019 19:06:45 -0800
> > > Jakub Kicinski <jakub.kicinski@...ronome.com> wrote:
> > >
> > > > On Thu, 28 Feb 2019 13:54:38 -0800, Stephen Hemminger wrote:
> > > > > @@ -12140,12 +12144,14 @@ static int i40e_xdp(struct net_device *dev,
> > > > > struct i40e_netdev_priv *np = netdev_priv(dev);
> > > > > struct i40e_vsi *vsi = np->vsi;
> > > > >
> > > > > - if (vsi->type != I40E_VSI_MAIN)
> > > > > + if (vsi->type != I40E_VSI_MAIN) {
> > > > > + NL_SET_ERR_MSG_MOD(xdp->extack, "XDP not allowed on VF");
> > > >
> > > > Is that right? Intel tends to have separate drivers for VFs, I think
> > > > the i40evf got renamed to iavf.
> > > >
> > > Good catch, this sanity check is to make sure that XDP is being enabled on main
> > > VSI of PF, not for example the VSI dedicated for Flow Director management
> > > (I40E_VSI_FDIR). Besides that, vsi->type != I40E_VSI_MAIN doesn't yield the
> > > I40E_VSI_SRIOV type.
> > >
> > > So it would be better to have an error message like "XDP is not allowed on VSIs
> > > other than main VSI".
> > >
> > > Thoughts?
> >
> > Do the other VSI types have netdevs? If they do this may be hard to
> > understand (unless Intel's manuals refer to VSI and users know what
> > that is).
> >
> > If there is no netdev on other VSIs perhaps this "should never happen"
> > and we can convert it to a WARN_ON()?
>
> I was just making a best guess based on similar checks elsewhere in the
> code as to the correct error message
Digging into this I think there are more netdevs, so perhaps
"XDP is only allowed on the main netdev instance"? Hopefully
Intel folks can advise even better.
Powered by blists - more mailing lists