On Wed, Feb 21, 2024 at 05:39:55PM +0100, Daniel Borkmann wrote: > The build in BPF CI is still broken, did you try to build selftests? Okay, I give up. How is a mortal supposed to build these? If I try to follow what I see in https://github.com/libbpf/ci/blob/main/build-selftests/build_selftests.sh I just get more and more kinds of errors: In file included from progs/cb_refs.c:5: progs/../bpf_testmod/bpf_testmod_kfunc.h:29:8: error: redefinition of 'prog_test_pass1' 29 | struct prog_test_pass1 { | ^ /srv/code/tools/testing/selftests/bpf/tools/include/vmlinux.h:106850:8: note: previous definition is here 106850 | struct prog_test_pass1 { | ^ Messing around with deleting vmlinux.h seems to get me further, but later: /srv/code/tools/testing/selftests/bpf/bpf_testmod/bpf_testmod.c: In function 'bpf_testmod_ops_is_valid_access': /srv/code/tools/testing/selftests/bpf/bpf_testmod/bpf_testmod.c:535:16: error: implicit declaration of function 'bpf_tracing_btf_ctx_access' [-Werror=implicit-function-declaration] 535 | return bpf_tracing_btf_ctx_access(off, size, type, prog, info); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ and then I'm stuck. It looks like the build isn't actually using KBUILD_OUTPUT for finding includes. If I try to add -I flags to the Makefile I just drown in new errors. -- Kees Cook