[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Where to install arch-dependent eBPF *.o files?





Le mer. 10 sept. 2025 à 21:49, Simon Josefsson <simon@josefsson.org> a écrit :
Hi.  Recent NSD support XDP and install some eBPF *.o files.  Upstream
puts them in /usr/share/nsd/ which lintian complains about.

E: nsd: arch-dependent-file-in-usr-share [usr/share/nsd/xdp-dns-redirect_kern.o]
N:
N:   This package installs an ELF binary in the /usr/share hierarchy, which is
N:   reserved for architecture-independent files.

Where is the appropriate place for these files?  I tried
/usr/libexec/nsd/ instead but got:

E: nsd: binary-from-other-architecture [usr/libexec/nsd/xdp-dns-redirect_kern.o]
N:
N:   This ELF binary appears to have been built for an architecture other than
N:   the one of the binary package being tested. This may occur when a
N:   pre-built binary is shipped in the package or when an attempt to
N:   cross-compile didn't work.

FWIW, file(1) on such objects (built on amd64) says:

xdp-dns-redirect_kern.o: ELF 64-bit LSB relocatable, eBPF, version 1 (SYSV), with debug_info, not stripped

Should we use /usr/lib/nsd?
/usr/lib/x86_64-linux-gnu/nsd/?
/usr/lib/bpf/?
/usr/lib/bpf/nsd/?
/usr/lib/x86_64-linux-gnu/bpf/?
/usr/lib/x86_64-linux-gnu/bpf/nsd/?

Not a specialist, but eBPF ELF files are bytecode for a virtual machine...
I'm interested in the correct answer, because somehow it's related to WASM.




Reply to: