mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 19:08:57 +09:00
Revert "ANDROID: Revert "af73d78bd384 ("kbuild: Remove debug info from kallsyms linking")""
This reverts commit 1780c41d22.
Fixed with updated toolchain.
Bug: 153164546
Change-Id: If6e431f22678db76e640b377121abb997105b8dd
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
This commit is contained in:
committed by
Alistair Delva
parent
c68d25a6d8
commit
5bfaff7c1c
@@ -110,12 +110,18 @@ vmlinux_link()
|
||||
local lds="${objtree}/${KBUILD_LDS}"
|
||||
local output=${1}
|
||||
local objects
|
||||
local strip_debug
|
||||
|
||||
info LD ${output}
|
||||
|
||||
# skip output file argument
|
||||
shift
|
||||
|
||||
# The kallsyms linking does not need debug symbols included.
|
||||
if [ "$output" != "${output#.tmp_vmlinux.kallsyms}" ] ; then
|
||||
strip_debug=-Wl,--strip-debug
|
||||
fi
|
||||
|
||||
if [ "${SRCARCH}" != "um" ]; then
|
||||
if [ -n "${CONFIG_LTO_CLANG}" ]; then
|
||||
# Use vmlinux.o instead of performing the slow LTO
|
||||
@@ -135,6 +141,7 @@ vmlinux_link()
|
||||
fi
|
||||
|
||||
${LD} ${KBUILD_LDFLAGS} ${LDFLAGS_vmlinux} \
|
||||
${strip_debug#-Wl,} \
|
||||
-o ${output} \
|
||||
-T ${lds} ${objects}
|
||||
else
|
||||
@@ -147,6 +154,7 @@ vmlinux_link()
|
||||
${@}"
|
||||
|
||||
${CC} ${CFLAGS_vmlinux} \
|
||||
${strip_debug} \
|
||||
-o ${output} \
|
||||
-Wl,-T,${lds} \
|
||||
${objects} \
|
||||
@@ -173,8 +181,9 @@ gen_btf()
|
||||
return 1
|
||||
fi
|
||||
|
||||
info "BTF" ${2}
|
||||
vmlinux_link ${1}
|
||||
|
||||
info "BTF" ${2}
|
||||
LLVM_OBJCOPY=${OBJCOPY} ${PAHOLE} -J ${1}
|
||||
|
||||
# Create ${2} which contains just .BTF section but no symbols. Add
|
||||
@@ -221,8 +230,8 @@ kallsyms()
|
||||
kallsyms_step()
|
||||
{
|
||||
kallsymso_prev=${kallsymso}
|
||||
kallsymso=.tmp_kallsyms${1}.o
|
||||
kallsyms_vmlinux=.tmp_vmlinux${1}
|
||||
kallsyms_vmlinux=.tmp_vmlinux.kallsyms${1}
|
||||
kallsymso=${kallsyms_vmlinux}.o
|
||||
|
||||
vmlinux_link ${kallsyms_vmlinux} "${kallsymso_prev}" ${btf_vmlinux_bin_o}
|
||||
kallsyms ${kallsyms_vmlinux} ${kallsymso}
|
||||
@@ -245,7 +254,6 @@ cleanup()
|
||||
{
|
||||
rm -f .btf.*
|
||||
rm -f .tmp_System.map
|
||||
rm -f .tmp_kallsyms*
|
||||
rm -f .tmp_lto.lds
|
||||
rm -f .tmp_vmlinux*
|
||||
rm -f System.map
|
||||
@@ -317,9 +325,8 @@ tr '\0' '\n' < modules.builtin.modinfo | sed -n 's/^[[:alnum:]:_]*\.file=//p' |
|
||||
|
||||
btf_vmlinux_bin_o=""
|
||||
if [ -n "${CONFIG_DEBUG_INFO_BTF}" ]; then
|
||||
if gen_btf .tmp_vmlinux.btf .btf.vmlinux.bin.o ; then
|
||||
btf_vmlinux_bin_o=.btf.vmlinux.bin.o
|
||||
else
|
||||
btf_vmlinux_bin_o=.btf.vmlinux.bin.o
|
||||
if ! gen_btf .tmp_vmlinux.btf $btf_vmlinux_bin_o ; then
|
||||
echo >&2 "Failed to generate BTF for vmlinux"
|
||||
echo >&2 "Try to disable CONFIG_DEBUG_INFO_BTF"
|
||||
exit 1
|
||||
|
||||
Reference in New Issue
Block a user