# 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/fe-x86-64-core-i7-2017.05/bin/x86_64-linux-gcc --version # < /opt/cross/kisskb/fe-x86-64-core-i7-2017.05/bin/x86_64-linux-ld --version # < git log --format=%s --max-count=1 e5d523f1ae8f2cef01f8e071aeee432654166708 # < make -s -j 32 ARCH=um O=/kisskb/build/linus_um-defconfig_um-x86_64 CROSS_COMPILE=/opt/cross/kisskb/fe-x86-64-core-i7-2017.05/bin/x86_64-linux- SUBARCH=x86_64 defconfig # < make -s -j 32 ARCH=um O=/kisskb/build/linus_um-defconfig_um-x86_64 CROSS_COMPILE=/opt/cross/kisskb/fe-x86-64-core-i7-2017.05/bin/x86_64-linux- SUBARCH=x86_64 help # make -s -j 32 ARCH=um O=/kisskb/build/linus_um-defconfig_um-x86_64 CROSS_COMPILE=/opt/cross/kisskb/fe-x86-64-core-i7-2017.05/bin/x86_64-linux- SUBARCH=x86_64 olddefconfig # make -s -j 32 ARCH=um O=/kisskb/build/linus_um-defconfig_um-x86_64 CROSS_COMPILE=/opt/cross/kisskb/fe-x86-64-core-i7-2017.05/bin/x86_64-linux- SUBARCH=x86_64 arch/x86/um/../kernel/module.o: In function `module_finalize': module.c:(.text+0x434): undefined reference to `apply_returns' collect2: error: ld returned 1 exit status make[1]: *** [/kisskb/src/Makefile:1164: vmlinux] Error 1 make: *** [Makefile:219: __sub-make] Error 2 Command 'make -s -j 32 ARCH=um O=/kisskb/build/linus_um-defconfig_um-x86_64 CROSS_COMPILE=/opt/cross/kisskb/fe-x86-64-core-i7-2017.05/bin/x86_64-linux- SUBARCH=x86_64 ' returned non-zero exit status 2 # rm -rf /kisskb/build/linus_um-defconfig_um-x86_64 # Build took: 0:00:28.972961