Re: [PATCH bpf-next] bpftoo: Support user defined vmlinux path

From: Daniel Borkmann
Date: Mon Apr 25 2022 - 10:55:00 EST


On 4/25/22 9:57 AM, Jianlin Lv wrote:
From: Jianlin Lv <iecedge@xxxxxxxxx>

Add EXTERNAL_PATH variable that define unconventional vmlinux path

Signed-off-by: Jianlin Lv <iecedge@xxxxxxxxx>
---
When building Ubuntu-5.15.0 kernel, '../../../vmlinux' cannot locate
compiled vmlinux image. Incorrect vmlinux generated vmlinux.h missing some
structure definitions that broken compiling pipe.

You should already be able to define custom VMLINUX_BTF_PATHS, no?

See commit :

commit ec23eb705620234421fd48fc2382490fcfbafc37
Author: Andrii Nakryiko <andriin@xxxxxx>
Date: Mon Jun 29 17:47:58 2020 -0700

tools/bpftool: Allow substituting custom vmlinux.h for the build

---
tools/bpf/bpftool/Makefile | 1 +
1 file changed, 1 insertion(+)

diff --git a/tools/bpf/bpftool/Makefile b/tools/bpf/bpftool/Makefile
index c6d2c77d0252..fefa3b763eb7 100644
--- a/tools/bpf/bpftool/Makefile
+++ b/tools/bpf/bpftool/Makefile
@@ -160,6 +160,7 @@ $(OBJS): $(LIBBPF) $(LIBBPF_INTERNAL_HDRS)
VMLINUX_BTF_PATHS ?= $(if $(O),$(O)/vmlinux) \
$(if $(KBUILD_OUTPUT),$(KBUILD_OUTPUT)/vmlinux) \
../../../vmlinux \
+ $(if $(EXTERNAL_PATH),$(EXTERNAL_PATH)/vmlinux) \
/sys/kernel/btf/vmlinux \
/boot/vmlinux-$(shell uname -r)
VMLINUX_BTF ?= $(abspath $(firstword $(wildcard $(VMLINUX_BTF_PATHS))))