Generate BTF (BPF Type Format) information from DWARF debug info. This is
embedded in the kernel and exported via sysfs as /sys/kernel/btf/vmlinux.
BTF data enhances kernel portability and introspection for BPF programs.
Selecting this also enables the dwarves host package which provides the
pahole tool used for BTF encoding.
Test using: "bpftool btf dump file /sys/kernel/btf/vmlinux format c"
This needs to depend on KERNEL_DEBUG_INFO_REDUCED not being set,
otherwise we can enable both KERNEL_DEBUG_INFO_BTF and
KERNEL_DEBUG_INFO_REDUCED, which will result in undefined behaviour.
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
[split DEBUG_INFO_REDUCED into separate commit, add dependency]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
help
This will compile your kernel and modules with debug information.
+config KERNEL_DEBUG_INFO_BTF
+
+ bool "Enable additional BTF type information"
+ default n
+ depends on !HOST_OS_MACOS
+ depends on KERNEL_DEBUG_INFO && !KERNEL_DEBUG_INFO_REDUCED
+ select DWARVES
+ help
+ Generate BPF Type Format (BTF) information from DWARF debug info.
+ Turning this on expects presence of pahole tool, which will convert
+ DWARF type info into equivalent deduplicated BTF type info.
+
+ Required to run BPF CO-RE applications.
+
config KERNEL_DEBUG_INFO_REDUCED
bool "Reduce debugging information"
default y