On Thu, 4 Apr 2024 at 16:31, Stephen Hemminger
<step...@networkplumber.org> wrote:
>
> On Wed, 3 Apr 2024 22:19:20 +0100
> Luca Boccassi <bl...@debian.org> wrote:
>
> > On Wed, 3 Apr 2024 at 16:55, Stephen Hemminger
> > <step...@networkplumber.org> wrote:
> > >
> > > On Wed, 03 Apr 2024 12:50:35 +0100
> > > Luca Boccassi <bl...@debian.org> wrote:
> > >
> > > > Using bpftool to generate the header at build time is a bit icky,
> > > > because it will look at sysfs on the build system, which is from the
> > > > running kernel. But a build system's kernel might be some ancient LTS,
> > > > and even be a completely different kconfig/build/distro from the actual
> > > > runtime one.
> > >
> > > One other option would be to ship a pre-built skeleton file.
> > > Which is what the method the old code did.
> > > But that creates an implied dependency on the developers machine build 
> > > environment.
> >
> > That's what the distro-provided vmlinux.h should help with - by
> > #include'ing that, it should be possible to build a co-re bpf program,
> > no other artifacts needed. You can try it out locally by generating it
> > from the local running kernel on your dev machine:
> >
> > bpftool btf dump file /sys/kernel/btf/vmlinux format c > vmlinux.h
>
> What about Ubuntu with borked installation of bpftool?

Yeah that's a bit confusing, the way to do it is to install
linux-tools-generic and then here's logic to find the right one:

https://git.launchpad.net/ubuntu/+source/xdp-tools/tree/debian/rules#n34

But I wouldn't bother with it in upstream projects, let the
integrators deal with it

Reply via email to