diff options
| author | Ihor Solodrai <ihor.solodrai@linux.dev> | 2025-12-29 23:28:23 +0300 |
|---|---|---|
| committer | Alexei Starovoitov <ast@kernel.org> | 2025-12-30 21:35:16 +0300 |
| commit | 600605853f87a4b1c3530a63f78a3541633402b0 (patch) | |
| tree | 182d60f3d44ddf50b53fe8bd1bd1007b5a9abe48 /scripts | |
| parent | f14cdb1367b947d373215e36cfe9c69768dbafc9 (diff) | |
| download | linux-600605853f87a4b1c3530a63f78a3541633402b0.tar.xz | |
scripts/gen-btf.sh: Fix .btf.o generation when compiling for RISCV
gen-btf.sh emits a .btf.o file with BTF sections to be linked into
vmlinux in link-vmlinux.sh
This .btf.o file is created by compiling an emptystring with ${CC},
and then adding BTF sections into it with ${OBJCOPY}.
To ensure the .btf.o is linkable when cross-compiling with LLVM, we
have to also pass ${KBUILD_FLAGS}, which in particular control the
target word size.
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202512240559.2M06DSX7-lkp@intel.com/
Signed-off-by: Ihor Solodrai <ihor.solodrai@linux.dev>
Link: https://lore.kernel.org/r/20251229202823.569619-1-ihor.solodrai@linux.dev
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/gen-btf.sh | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/scripts/gen-btf.sh b/scripts/gen-btf.sh index 06c6d8becaa2..12244dbe097c 100755 --- a/scripts/gen-btf.sh +++ b/scripts/gen-btf.sh @@ -96,7 +96,7 @@ gen_btf_o() # deletes all symbols including __start_BTF and __stop_BTF, which will # be redefined in the linker script. info OBJCOPY "${btf_data}" - echo "" | ${CC} ${CLANG_FLAGS} -c -x c -o ${btf_data} - + echo "" | ${CC} ${CLANG_FLAGS} ${KBUILD_CFLAGS} -c -x c -o ${btf_data} - ${OBJCOPY} --add-section .BTF=${ELF_FILE}.BTF \ --set-section-flags .BTF=alloc,readonly ${btf_data} ${OBJCOPY} --only-section=.BTF --strip-all ${btf_data} |
