# git rev-parse -q --verify e5d523f1ae8f2cef01f8e071aeee432654166708^{commit} e5d523f1ae8f2cef01f8e071aeee432654166708 already have revision, skipping fetch # git checkout -q -f -B kisskb e5d523f1ae8f2cef01f8e071aeee432654166708 # git clean -qxdf # < git log -1 # commit e5d523f1ae8f2cef01f8e071aeee432654166708 # Author: Nick Desaulniers # Date: Thu Jul 14 13:56:43 2022 -0700 # # ubsan: disable UBSAN_DIV_ZERO for clang # # Building with UBSAN_DIV_ZERO with clang produces numerous fallthrough # warnings from objtool. # # In the case of uncheck division, UBSAN_DIV_ZERO may introduce new # control flow to check for division by zero. # # Because the result of the division is undefined, LLVM may optimize the # control flow such that after the call to __ubsan_handle_divrem_overflow # doesn't matter. If panic_on_warn was set, # __ubsan_handle_divrem_overflow would panic. # # The problem is is that panic_on_warn is run time configurable. If it's # disabled, then we cannot guarantee that we will be able to recover # safely. Disable this config for clang until we can come up with a # solution in LLVM. # # Link: https://github.com/ClangBuiltLinux/linux/issues/1657 # Link: https://github.com/llvm/llvm-project/issues/56289 # Link: https://lore.kernel.org/lkml/CAHk-=wj1qhf7y3VNACEexyp5EbkNpdcu_542k-xZpzmYLOjiCg@mail.gmail.com/ # Reported-by: Sudip Mukherjee # Suggested-by: Linus Torvalds # Signed-off-by: Nick Desaulniers # Acked-by: Nathan Chancellor # Signed-off-by: Linus Torvalds # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux-ld --version # < git log --format=%s --max-count=1 e5d523f1ae8f2cef01f8e071aeee432654166708 # < make -s -j 40 ARCH=sparc O=/kisskb/build/linus_sparc-allmodconfig_sparc64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux- allmodconfig # Added to kconfig CONFIG_64BIT=n # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_HAVE_FTRACE_MCOUNT_RECORD=n # Added to kconfig CONFIG_SAMPLES=n # Added to kconfig CONFIG_MODULE_SIG=n # < make -s -j 40 ARCH=sparc O=/kisskb/build/linus_sparc-allmodconfig_sparc64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux- help # make -s -j 40 ARCH=sparc O=/kisskb/build/linus_sparc-allmodconfig_sparc64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux- olddefconfig # make -s -j 40 ARCH=sparc O=/kisskb/build/linus_sparc-allmodconfig_sparc64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux- :1517:2: warning: #warning syscall clone3 not implemented [-Wcpp] WARNING: modpost: EXPORT symbol "empty_zero_page" [vmlinux] version generation failed, symbol will not be versioned. Is "empty_zero_page" prototyped in ? WARNING: modpost: EXPORT symbol "__udelay" [vmlinux] version generation failed, symbol will not be versioned. Is "__udelay" prototyped in ? WARNING: modpost: EXPORT symbol "__ndelay" [vmlinux] version generation failed, symbol will not be versioned. Is "__ndelay" prototyped in ? WARNING: modpost: EXPORT symbol "__ashldi3" [vmlinux] version generation failed, symbol will not be versioned. Is "__ashldi3" prototyped in ? WARNING: modpost: EXPORT symbol "__ashrdi3" [vmlinux] version generation failed, symbol will not be versioned. Is "__ashrdi3" prototyped in ? WARNING: modpost: EXPORT symbol "bzero_1page" [vmlinux] version generation failed, symbol will not be versioned. Is "bzero_1page" prototyped in ? WARNING: modpost: EXPORT symbol "__copy_1page" [vmlinux] version generation failed, symbol will not be versioned. Is "__copy_1page" prototyped in ? WARNING: modpost: EXPORT symbol "__divdi3" [vmlinux] version generation failed, symbol will not be versioned. Is "__divdi3" prototyped in ? WARNING: modpost: EXPORT symbol "___rw_read_enter" [vmlinux] version generation failed, symbol will not be versioned. Is "___rw_read_enter" prototyped in ? WARNING: modpost: EXPORT symbol "___rw_read_exit" [vmlinux] version generation failed, symbol will not be versioned. Is "___rw_read_exit" prototyped in ? WARNING: modpost: EXPORT symbol "___rw_read_try" [vmlinux] version generation failed, symbol will not be versioned. Is "___rw_read_try" prototyped in ? WARNING: modpost: EXPORT symbol "___rw_write_enter" [vmlinux] version generation failed, symbol will not be versioned. Is "___rw_write_enter" prototyped in ? WARNING: modpost: EXPORT symbol "__lshrdi3" [vmlinux] version generation failed, symbol will not be versioned. Is "__lshrdi3" prototyped in ? WARNING: modpost: EXPORT symbol "__muldi3" [vmlinux] version generation failed, symbol will not be versioned. Is "__muldi3" prototyped in ? arch/sparc/kernel/head_32.o: In function `current_pc': (.head.text+0x5040): relocation truncated to fit: R_SPARC_WDISP22 against `.init.text' arch/sparc/kernel/head_32.o: In function `halt_notsup': (.head.text+0x5100): relocation truncated to fit: R_SPARC_WDISP22 against `.init.text' arch/sparc/kernel/head_32.o: In function `leon_init': (.init.text+0xa4): relocation truncated to fit: R_SPARC_WDISP22 against symbol `leon_smp_cpu_startup' defined in .text section in arch/sparc/kernel/trampoline_32.o arch/sparc/kernel/process_32.o:(.fixup+0x4): relocation truncated to fit: R_SPARC_WDISP22 against `.text' arch/sparc/kernel/process_32.o:(.fixup+0xc): relocation truncated to fit: R_SPARC_WDISP22 against `.text' arch/sparc/kernel/signal_32.o:(.fixup+0x4): relocation truncated to fit: R_SPARC_WDISP22 against `.text' arch/sparc/kernel/signal_32.o:(.fixup+0x10): relocation truncated to fit: R_SPARC_WDISP22 against `.text' arch/sparc/kernel/signal_32.o:(.fixup+0x1c): relocation truncated to fit: R_SPARC_WDISP22 against `.text' arch/sparc/kernel/signal_32.o:(.fixup+0x28): relocation truncated to fit: R_SPARC_WDISP22 against `.text' arch/sparc/kernel/signal_32.o:(.fixup+0x34): relocation truncated to fit: R_SPARC_WDISP22 against `.text' arch/sparc/kernel/signal_32.o:(.fixup+0x40): additional relocation overflows omitted from the output make[1]: *** [/kisskb/src/Makefile:1164: vmlinux] Error 1 make: *** [Makefile:219: __sub-make] Error 2 Command 'make -s -j 40 ARCH=sparc O=/kisskb/build/linus_sparc-allmodconfig_sparc64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux- ' returned non-zero exit status 2 # rm -rf /kisskb/build/linus_sparc-allmodconfig_sparc64-gcc5 # Build took: 0:05:20.434559