# git rev-parse -q --verify d4c858643263cfde13f7d937eaff95c2ed87cdf1^{commit} d4c858643263cfde13f7d937eaff95c2ed87cdf1 already have revision, skipping fetch # git checkout -q -f -B kisskb d4c858643263cfde13f7d937eaff95c2ed87cdf1 # git clean -qxdf # < git log -1 # commit d4c858643263cfde13f7d937eaff95c2ed87cdf1 # Author: Changbin Du # Date: Tue Feb 1 09:32:57 2022 +0800 # # kallsyms: ignore all local labels prefixed by '.L' # # The llvm compiler can generate lots of local labels ('.LBB', '.Ltmpxxx', # '.L__unnamed_xx', etc.). These symbols usually are useless for debugging. # And they might overlap with handwritten symbols. # # Before this change, a dumpstack shows a local symbol for epc: # [ 0.040341][ T0] Hardware name: riscv-virtio,qemu (DT) # [ 0.040376][ T0] epc : .LBB6_14+0x22/0x6a # [ 0.040452][ T0] ra : restore_all+0x12/0x6e # # The simple solution is that we can ignore all local labels prefixed by '.L'. # For handwritten symbols which need to be preserved should drop the '.L' # prefix. # # After this change, the C defined symbol is shown so we can locate the # problematical code immediately: # [ 0.035795][ T0] Hardware name: riscv-virtio,qemu (DT) # [ 0.036332][ T0] epc : trace_hardirqs_on+0x54/0x13c # [ 0.036567][ T0] ra : restore_all+0x12/0x6e # # Signed-off-by: Changbin Du # Reviewed-by: Nathan Chancellor # Reviewed-by: Nick Desaulniers # Signed-off-by: Masahiro Yamada # < /opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux-ld --version # < git log --format=%s --max-count=1 d4c858643263cfde13f7d937eaff95c2ed87cdf1 # < make -s -j 120 ARCH=x86 O=/kisskb/build/kbuild_x86-allmodconfig_x86_64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux- allmodconfig # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_MODULE_SIG=n # Added to kconfig CONFIG_SAMPLES=n # < make -s -j 120 ARCH=x86 O=/kisskb/build/kbuild_x86-allmodconfig_x86_64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux- help # make -s -j 120 ARCH=x86 O=/kisskb/build/kbuild_x86-allmodconfig_x86_64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux- olddefconfig # make -s -j 120 ARCH=x86 O=/kisskb/build/kbuild_x86-allmodconfig_x86_64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux- vmlinux.o: warning: objtool: mce_start()+0x5c: call to __kasan_check_write() leaves .noinstr.text section vmlinux.o: warning: objtool: mce_gather_info()+0x5f: call to v8086_mode.constprop.0() leaves .noinstr.text section vmlinux.o: warning: objtool: mce_read_aux()+0x8a: call to mca_msr_reg() leaves .noinstr.text section vmlinux.o: warning: objtool: do_machine_check()+0x197: call to mce_no_way_out() leaves .noinstr.text section vmlinux.o: warning: objtool: mce_severity_amd.constprop.0()+0xca: call to mce_severity_amd_smca() leaves .noinstr.text section Completed OK # rm -rf /kisskb/build/kbuild_x86-allmodconfig_x86_64-gcc11 # Build took: 0:09:22.362323