Tony Ambardar wrote:
> 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: 90ceddcb4950 ("bpf: Support llvm-objcopy for vmlinux BTF")
>
> Signed-off-by: Tony Ambardar <[email protected]>
> ---
> include/asm-generic/vmlinux.lds.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/asm-generic/vmlinux.lds.h
> b/include/asm-generic/vmlinux.lds.h
> index 5430febd34be..7636bc71c71f 100644
> --- a/include/asm-generic/vmlinux.lds.h
> +++ b/include/asm-generic/vmlinux.lds.h
> @@ -661,7 +661,7 @@
> #define BTF \
> .BTF : AT(ADDR(.BTF) - LOAD_OFFSET) { \
> __start_BTF = .; \
> - *(.BTF) \
> + KEEP(*(.BTF)) \
> __stop_BTF = .; \
> } \
> . = ALIGN(4); \
> --
> 2.25.1
>
Acked-by: John Fastabend <[email protected]>