-
- Downloads
Merge tag 'x86_urgent_for_v6.5_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull x86 fixes from Borislav Petkov: "Extraordinary embargoed times call for extraordinary measures. That's why this week's x86/urgent branch is larger than usual, containing all the known fallout fixes after the SRSO mitigation got merged. I know, it is a bit late in the game but everyone who has reported a bug stemming from the SRSO pile, has tested that branch and has confirmed that it fixes their bug. Also, I've run it on every possible hardware I have and it is looking good. It is running on this very machine while I'm typing, for 2 days now without an issue. Famous last words... - Use LEA ...%rsp instead of ADD %rsp in the Zen1/2 SRSO return sequence as latter clobbers flags which interferes with fastop emulation in KVM, leading to guests freezing during boot - A fix for the DIV(0) quotient data leak on Zen1 to clear the divider buffers at the right time - Disable the SRSO mitigation on unaffected configurations as it got enabled there unnecessarily - Change .text section name to fix CONFIG_LTO_CLANG builds - Improve the optprobe indirect jmp check so that certain configurations can still be able to use optprobes at all - A serious and good scrubbing of the untraining routines by PeterZ: - Add proper speculation stopping traps so that objtool is happy - Adjust objtool to handle the new thunks - Make the thunk pointer assignable to the different untraining sequences at runtime, thus avoiding the alternative at the return thunk. It simplifies the code a bit too. - Add a entry_untrain_ret() main entry point which selects the respective untraining sequence - Rename things so that they're more clear - Fix stack validation with FRAME_POINTER=y builds - Fix static call patching to handle when a JMP to the return thunk is the last insn on the very last module memory page - Add more documentation about what each untraining routine does and why" * tag 'x86_urgent_for_v6.5_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86/srso: Correct the mitigation status when SMT is disabled x86/static_call: Fix __static_call_fixup() objtool/x86: Fixup frame-pointer vs rethunk x86/srso: Explain the untraining sequences a bit more x86/cpu/kvm: Provide UNTRAIN_RET_VM x86/cpu: Cleanup the untrain mess x86/cpu: Rename srso_(.*)_alias to srso_alias_\1 x86/cpu: Rename original retbleed methods x86/cpu: Clean up SRSO return thunk mess x86/alternative: Make custom return thunk unconditional objtool/x86: Fix SRSO mess x86/cpu: Fix up srso_safe_ret() and __x86_return_thunk() x86/cpu: Fix __x86_return_thunk symbol type x86/retpoline,kprobes: Skip optprobe check for indirect jumps with retpolines and IBT x86/retpoline,kprobes: Fix position of thunk sections with CONFIG_LTO_CLANG x86/srso: Disable the mitigation on unaffected configurations x86/CPU/AMD: Fix the DIV(0) initial fix attempt x86/retpoline: Don't clobber RFLAGS during srso_safe_ret()
Showing
- Documentation/admin-guide/hw-vuln/srso.rst 2 additions, 2 deletionsDocumentation/admin-guide/hw-vuln/srso.rst
- arch/x86/include/asm/entry-common.h 1 addition, 0 deletionsarch/x86/include/asm/entry-common.h
- arch/x86/include/asm/nospec-branch.h 27 additions, 22 deletionsarch/x86/include/asm/nospec-branch.h
- arch/x86/kernel/alternative.c 0 additions, 4 deletionsarch/x86/kernel/alternative.c
- arch/x86/kernel/cpu/amd.c 1 addition, 0 deletionsarch/x86/kernel/cpu/amd.c
- arch/x86/kernel/cpu/bugs.c 23 additions, 4 deletionsarch/x86/kernel/cpu/bugs.c
- arch/x86/kernel/kprobes/opt.c 16 additions, 24 deletionsarch/x86/kernel/kprobes/opt.c
- arch/x86/kernel/static_call.c 13 additions, 0 deletionsarch/x86/kernel/static_call.c
- arch/x86/kernel/traps.c 0 additions, 2 deletionsarch/x86/kernel/traps.c
- arch/x86/kernel/vmlinux.lds.S 9 additions, 11 deletionsarch/x86/kernel/vmlinux.lds.S
- arch/x86/kvm/svm/svm.c 2 additions, 0 deletionsarch/x86/kvm/svm/svm.c
- arch/x86/kvm/svm/vmenter.S 2 additions, 5 deletionsarch/x86/kvm/svm/vmenter.S
- arch/x86/lib/retpoline.S 95 additions, 42 deletionsarch/x86/lib/retpoline.S
- tools/objtool/arch/x86/decode.c 7 additions, 4 deletionstools/objtool/arch/x86/decode.c
- tools/objtool/check.c 35 additions, 10 deletionstools/objtool/check.c
- tools/objtool/include/objtool/arch.h 1 addition, 0 deletionstools/objtool/include/objtool/arch.h
- tools/objtool/include/objtool/elf.h 1 addition, 0 deletionstools/objtool/include/objtool/elf.h
- tools/perf/util/thread-stack.c 1 addition, 3 deletionstools/perf/util/thread-stack.c
Loading
Please register or sign in to comment