diff options
author | Josh Poimboeuf <jpoimboe@kernel.org> | 2025-04-08 14:47:31 -0700 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2025-04-09 12:41:30 +0200 |
commit | fc9fd3f98423367c79e0bd85a9515df26dc1b3cc (patch) | |
tree | 86cbab691334e23f96e98bd6999a76bfd61aba76 /arch | |
parent | 13235d6d50bba99931c4392c0f813cfae0de3eac (diff) |
x86/bugs: Use SBPB in write_ibpb() if applicable
write_ibpb() does IBPB, which (among other things) flushes branch type
predictions on AMD. If the CPU has SRSO_NO, or if the SRSO mitigation
has been disabled, branch type flushing isn't needed, in which case the
lighter-weight SBPB can be used.
The 'x86_pred_cmd' variable already keeps track of whether IBPB or SBPB
should be used. Use that instead of hardcoding IBPB.
Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/17c5dcd14b29199b75199d67ff7758de9d9a4928.1744148254.git.jpoimboe@kernel.org
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/entry/entry.S | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/entry/entry.S b/arch/x86/entry/entry.S index cabe65ac8379..175958b02f2b 100644 --- a/arch/x86/entry/entry.S +++ b/arch/x86/entry/entry.S @@ -21,7 +21,7 @@ SYM_FUNC_START(write_ibpb) ANNOTATE_NOENDBR movl $MSR_IA32_PRED_CMD, %ecx - movl $PRED_CMD_IBPB, %eax + movl _ASM_RIP(x86_pred_cmd), %eax xorl %edx, %edx wrmsr |