# git rev-parse -q --verify 7001052160d172f6de06adeffde24dde9935ece8^{commit} 7001052160d172f6de06adeffde24dde9935ece8 already have revision, skipping fetch # git checkout -q -f -B kisskb 7001052160d172f6de06adeffde24dde9935ece8 # git clean -qxdf # < git log -1 # commit 7001052160d172f6de06adeffde24dde9935ece8 # Merge: f022814633e1 3986f65d4f40 # Author: Linus Torvalds # Date: Sun Mar 27 10:17:23 2022 -0700 # # Merge tag 'x86_core_for_5.18_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip # # Pull x86 CET-IBT (Control-Flow-Integrity) support from Peter Zijlstra: # "Add support for Intel CET-IBT, available since Tigerlake (11th gen), # which is a coarse grained, hardware based, forward edge # Control-Flow-Integrity mechanism where any indirect CALL/JMP must # target an ENDBR instruction or suffer #CP. # # Additionally, since Alderlake (12th gen)/Sapphire-Rapids, speculation # is limited to 2 instructions (and typically fewer) on branch targets # not starting with ENDBR. CET-IBT also limits speculation of the next # sequential instruction after the indirect CALL/JMP [1]. # # CET-IBT is fundamentally incompatible with retpolines, but provides, # as described above, speculation limits itself" # # [1] https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/technical-documentation/branch-history-injection.html # # * tag 'x86_core_for_5.18_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (53 commits) # kvm/emulate: Fix SETcc emulation for ENDBR # x86/Kconfig: Only allow CONFIG_X86_KERNEL_IBT with ld.lld >= 14.0.0 # x86/Kconfig: Only enable CONFIG_CC_HAS_IBT for clang >= 14.0.0 # kbuild: Fixup the IBT kbuild changes # x86/Kconfig: Do not allow CONFIG_X86_X32_ABI=y with llvm-objcopy # x86: Remove toolchain check for X32 ABI capability # x86/alternative: Use .ibt_endbr_seal to seal indirect calls # objtool: Find unused ENDBR instructions # objtool: Validate IBT assumptions # objtool: Add IBT/ENDBR decoding # objtool: Read the NOENDBR annotation # x86: Annotate idtentry_df() # x86,objtool: Move the ASM_REACHABLE annotation to objtool.h # x86: Annotate call_on_stack() # objtool: Rework ASM_REACHABLE # x86: Mark __invalid_creds() __noreturn # exit: Mark do_group_exit() __noreturn # x86: Mark stop_this_cpu() __noreturn # objtool: Ignore extra-symbol code # objtool: Rename --duplicate to --lto # ... # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux-ld --version # < git log --format=%s --max-count=1 7001052160d172f6de06adeffde24dde9935ece8 # < make -s -j 120 ARCH=x86_64 O=/kisskb/build/linus-rand_x86_64-randconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux- randconfig # Added to kconfig CONFIG_STANDALONE=y # Added to kconfig CONFIG_PREVENT_FIRMWARE_BUILD=y # Added to kconfig CONFIG_CC_STACKPROTECTOR_STRONG=n # Added to kconfig CONFIG_GCC_PLUGINS=n # Added to kconfig CONFIG_GCC_PLUGIN_CYC_COMPLEXITY=n # Added to kconfig CONFIG_GCC_PLUGIN_SANCOV=n # Added to kconfig CONFIG_GCC_PLUGIN_LATENT_ENTROPY=n # Added to kconfig CONFIG_BPF_PRELOAD=n # Added to kconfig # < make -s -j 120 ARCH=x86_64 O=/kisskb/build/linus-rand_x86_64-randconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux- help # make -s -j 120 ARCH=x86_64 O=/kisskb/build/linus-rand_x86_64-randconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux- olddefconfig .config:6660:warning: override: reassigning to symbol PREVENT_FIRMWARE_BUILD .config:6662:warning: override: reassigning to symbol GCC_PLUGINS # make -s -j 120 ARCH=x86_64 O=/kisskb/build/linus-rand_x86_64-randconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux- arch/x86/crypto/chacha-x86_64.prelink.o: warning: objtool: chacha_2block_xor_avx512vl() falls through to next function chacha_8block_xor_avx512vl() arch/x86/crypto/chacha-x86_64.prelink.o: warning: objtool: chacha_4block_xor_avx512vl() falls through to next function chacha_8block_xor_avx512vl() arch/x86/crypto/poly1305-x86_64.prelink.o: warning: objtool: poly1305_blocks_avx() falls through to next function poly1305_blocks_x86_64() arch/x86/crypto/poly1305-x86_64.prelink.o: warning: objtool: poly1305_emit_avx() falls through to next function poly1305_emit_x86_64() arch/x86/crypto/poly1305-x86_64.prelink.o: warning: objtool: poly1305_blocks_avx2() falls through to next function poly1305_blocks_x86_64() arch/x86/crypto/poly1305-x86_64.prelink.o: warning: objtool: poly1305_blocks_avx512() falls through to next function poly1305_blocks_x86_64() arch/x86/crypto/chacha-x86_64.prelink.o: warning: objtool: chacha_2block_xor_avx512vl() falls through to next function chacha_8block_xor_avx512vl() arch/x86/crypto/chacha-x86_64.prelink.o: warning: objtool: chacha_4block_xor_avx512vl() falls through to next function chacha_8block_xor_avx512vl() arch/x86/crypto/poly1305-x86_64.prelink.o: warning: objtool: poly1305_blocks_avx() falls through to next function poly1305_blocks_x86_64() arch/x86/crypto/poly1305-x86_64.prelink.o: warning: objtool: poly1305_emit_avx() falls through to next function poly1305_emit_x86_64() arch/x86/crypto/poly1305-x86_64.prelink.o: warning: objtool: poly1305_blocks_avx2() falls through to next function poly1305_blocks_x86_64() arch/x86/crypto/poly1305-x86_64.prelink.o: warning: objtool: poly1305_blocks_avx512() falls through to next function poly1305_blocks_x86_64() vmlinux.o: warning: objtool: enter_from_user_mode()+0x50: call to on_thread_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: syscall_enter_from_user_mode()+0x58: call to on_thread_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: syscall_enter_from_user_mode_prepare()+0x50: call to on_thread_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: irqentry_enter_from_user_mode()+0x50: call to on_thread_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: enter_from_user_mode()+0x50: call to on_thread_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: syscall_enter_from_user_mode()+0x58: call to on_thread_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: syscall_enter_from_user_mode_prepare()+0x50: call to on_thread_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: irqentry_enter_from_user_mode()+0x50: call to on_thread_stack() leaves .noinstr.text section Completed OK # rm -rf /kisskb/build/linus-rand_x86_64-randconfig_x86_64-gcc8 # Build took: 0:03:17.287290