From 531e0399cd7fca9e1a88520b817ac036da204c1c Mon Sep 17 00:00:00 2001 From: Tony Ambardar Date: Sun, 26 Jul 2020 07:51:34 -0700 Subject: [PATCH] build: add option KERNEL_DEBUG_INFO_BTF 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 Signed-off-by: Felix Fietkau [split DEBUG_INFO_REDUCED into separate commit, add dependency] Signed-off-by: Stijn Tintel --- config/Config-kernel.in | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/config/Config-kernel.in b/config/Config-kernel.in index e146107148..1a3f6a8bdc 100644 --- a/config/Config-kernel.in +++ b/config/Config-kernel.in @@ -373,6 +373,20 @@ config KERNEL_DEBUG_INFO 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