The upcoming module hashes functionality will build the modules in
between the generation of the BTF data and the final link of vmlinux.
At this point vmlinux is not yet built and therefore can't be used for
module BTF generation. vmlinux.unstripped however is usable and
sufficient for BTF generation.

Signed-off-by: Thomas Weißschuh <li...@weissschuh.net>
---
 scripts/Makefile.modfinal | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/scripts/Makefile.modfinal b/scripts/Makefile.modfinal
index 
5d01b553ec9a4565c8e5a6edd05665c409003bc1..527f6b27baff9db94d31c15447de445a05bc0634
 100644
--- a/scripts/Makefile.modfinal
+++ b/scripts/Makefile.modfinal
@@ -36,11 +36,11 @@ quiet_cmd_ld_ko_o = LD [M]  $@
 
 quiet_cmd_btf_ko = BTF [M] $@
       cmd_btf_ko =                                                     \
-       if [ ! -f $(objtree)/vmlinux ]; then                            \
-               printf "Skipping BTF generation for %s due to unavailability of 
vmlinux\n" $@ 1>&2; \
+       if [ ! -f $(objtree)/vmlinux.unstripped ]; then                 \
+               printf "Skipping BTF generation for %s due to unavailability of 
vmlinux.unstripped\n" $@ 1>&2; \
        else                                                            \
-               LLVM_OBJCOPY="$(OBJCOPY)" $(PAHOLE) -J $(PAHOLE_FLAGS) 
$(MODULE_PAHOLE_FLAGS) --btf_base $(objtree)/vmlinux $@; \
-               $(RESOLVE_BTFIDS) -b $(objtree)/vmlinux $@;             \
+               LLVM_OBJCOPY="$(OBJCOPY)" $(PAHOLE) -J $(PAHOLE_FLAGS) 
$(MODULE_PAHOLE_FLAGS) --btf_base $(objtree)/vmlinux.unstripped $@; \
+               $(RESOLVE_BTFIDS) -b $(objtree)/vmlinux.unstripped $@;          
\
        fi;
 
 # Same as newer-prereqs, but allows to exclude specified extra dependencies

-- 
2.49.0


Reply via email to