Commit 65c20439 authored by Tony Ambardar's avatar Tony Ambardar Committed by Daniel Borkmann

bpf: Prevent .BTF section elimination

Systems with memory or disk constraints often reduce the kernel footprint
by configuring LD_DEAD_CODE_DATA_ELIMINATION. However, this can result in
removal of any BTF information.

Use the KEEP() macro to preserve the BTF data as done with other important
sections, while still allowing for smaller kernels.

Fixes: 90ceddcb ("bpf: Support llvm-objcopy for vmlinux BTF")
Signed-off-by: default avatarTony Ambardar <Tony.Ambardar@gmail.com>
Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
Acked-by: default avatarJohn Fastabend <john.fastabend@gmail.com>
Acked-by: default avatarAndrii Nakryiko <andriin@fb.com>
Link: https://lore.kernel.org/bpf/a635b5d3e2da044e7b51ec1315e8910fbce0083f.1600417359.git.Tony.Ambardar@gmail.com
parent e23bb04b
...@@ -661,7 +661,7 @@ ...@@ -661,7 +661,7 @@
#define BTF \ #define BTF \
.BTF : AT(ADDR(.BTF) - LOAD_OFFSET) { \ .BTF : AT(ADDR(.BTF) - LOAD_OFFSET) { \
__start_BTF = .; \ __start_BTF = .; \
*(.BTF) \ KEEP(*(.BTF)) \
__stop_BTF = .; \ __stop_BTF = .; \
} \ } \
. = ALIGN(4); \ . = ALIGN(4); \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment