On Mon, Dec 12, 2022 at 5:25 PM Ilya Maximets <[email protected]> wrote: > > On 12/12/22 17:17, Frode Nordahl wrote: > > On Mon, Dec 12, 2022 at 2:55 PM Frode Nordahl > > <[email protected]> wrote: > >> > >> On Mon, Dec 12, 2022 at 12:20 PM Ilya Maximets <[email protected]> wrote: > >>> > >>> On 12/12/22 09:40, Eelco Chaudron wrote: > >>>> > >>>> > >>>> On 10 Dec 2022, at 3:16, Ilya Maximets wrote: > >>>> > >>>>> This patch set allows OVS to build with libxdp and newer libbpf. > >>>>> It also enables AF_XDP support by default as long as all the > >>>>> dependencies are available. > >>>> > >>>> Hi Ilya, > >>>> > >>>> I did not yet review the patch, but I do not like enabling AF_XPD > >>>> support by default for the following reasons: > >>> > >>> Hi, Eelco. Thanks for taking a look! > >>> > >>>> > >>>> - I still believe AF_XDP support in OVS has not had many field trials, > >>>> so I would still classify this as an “experimental” feature. > >>> > >>> This patch set doesn't make the feature non-experimental. > >>> There is still a warning about that in the documentation. > >>> See the patch 3/6. > >>> > >>> In general, we do build a lot of experimental features by > >>> default and users can enable these features. For example, > >>> some PMD management features, userspace TSO or AVX512 support. > >>> > >>> Enabling the build may increase the number of field trials > >>> performed by enthusiastic users, so should have some > >>> positive impact on development in general. I've seen an > >>> increased interest in trying out this feature recently. > >>> Also, the feature doesn't impact existing users, they still > >>> need to explicitly create ports of afxdp type in order to > >>> use them. The code is pretty much independent from other > >>> parts of OVS. > >>> > >>>> - Reversing build option logic might cause problems for distributions> > >>>> (or at least require people to think, as now they have to explicitly > >>>> disable it). > >>> > >>> This is true for every other feature. And I added an explicit > >>> disabling for Debian and Fedora packaging in the patch 3/6. > >>> In general, distributions should not blindly take every > >>> new release without checking the NEWS anyway. > >> > >> fwiw; we have interest in AF_XDP too and I'm currently evaluating if > >> we have the bits aligned to enable this by default in Debian too. > >> > >> One challenge is that in Debian libbpf 0.8 is a compatibility package > >> and the development package is only available as a 1.x, and at the > >> same time xdp-tools is linked with libbpf 0.8. So when building OVS it > >> will try to link with both libbpf 0.8 via libxdp and libbpf 1.x, which > >> I think may be preventing this from working right now. > >> > >> That is our problem to sort though, and we have no issue with having > >> this important feature be enabled by default in the upstream build > >> system. > > > > ftr; This was already sorted in Debian, I was using an out of date system. > > > > With that fixed, it does appear that OVS or xdp-tools may need an > > update to work with libbpf 1.x: > > 2022-12-12T16:01:32.800Z|00067|netdev_afxdp|WARN|libbpf: prog > > 'xdp_dispatcher': missing BPF prog type, check ELF section name > > 'xdp/dispatcher' > > 2022-12-12T16:01:32.800Z|00068|netdev_afxdp|WARN|libbpf: prog > > 'xdp_dispatcher': failed to load: -22 > > > > Hmm. OVS doesn't load xdp programs on its own, it relies on libbpf > to load a default program.
Yes, I believe libxdp is at fault here and not this series nor OVS. > BTW, are you testing with the second patch of this patch set applied? > Otherwise, OVS will use some deprecated APIs that might be broken. WIth the whole set, It works fine on a pristine Fedora 37 system with libbpf 0.8, but on for example Debian with libbpf 1.0.1. I've confirmed it works also on Debian with libbpf 0.8. I suspect xdp-tools needs to be updated along the lines of [0] after libbpf was updated in [1]. 0: https://lore.kernel.org/lkml/[email protected]/T/ 1: https://github.com/torvalds/linux/commit/450b167fb9be91a8164d3f3d734674f5fe95b22d -- Frode Nordahl _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
