summaryrefslogtreecommitdiff
path: root/arch/x86/entry/entry.S
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2024-10-21 08:14:15 +0200
committerIngo Molnar <mingo@kernel.org>2024-10-21 08:14:15 +0200
commitd1fb8a78b2ff1fe4e9478c75b4fbec588a73c1b0 (patch)
tree1cf2e78b8e7be71a47c8b978dea915533e965cbe /arch/x86/entry/entry.S
parentaf0c8b2bf67b25756f27644936e74fd9a6273bd2 (diff)
parent42f7652d3eb527d03665b09edac47f85fb600924 (diff)
downloadlinux-d1fb8a78b2ff1fe4e9478c75b4fbec588a73c1b0.tar.gz
linux-d1fb8a78b2ff1fe4e9478c75b4fbec588a73c1b0.tar.bz2
linux-d1fb8a78b2ff1fe4e9478c75b4fbec588a73c1b0.zip
Merge tag 'v6.12-rc4' into sched/core, to resolve conflict
Overlapping fixes solving the same bug slightly differently: 7266f0a6d3bb fs/bcachefs: Fix __wait_on_freeing_inode() definition of waitqueue entry 3b80552e7057 bcachefs: __wait_for_freeing_inode: Switch to wait_bit_queue_entry Use the upstream version. Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/x86/entry/entry.S')
-rw-r--r--arch/x86/entry/entry.S5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/x86/entry/entry.S b/arch/x86/entry/entry.S
index d9feadffa972..324686bca368 100644
--- a/arch/x86/entry/entry.S
+++ b/arch/x86/entry/entry.S
@@ -9,6 +9,8 @@
#include <asm/unwind_hints.h>
#include <asm/segment.h>
#include <asm/cache.h>
+#include <asm/cpufeatures.h>
+#include <asm/nospec-branch.h>
#include "calling.h"
@@ -19,6 +21,9 @@ SYM_FUNC_START(entry_ibpb)
movl $PRED_CMD_IBPB, %eax
xorl %edx, %edx
wrmsr
+
+ /* Make sure IBPB clears return stack preductions too. */
+ FILL_RETURN_BUFFER %rax, RSB_CLEAR_LOOPS, X86_BUG_IBPB_NO_RET
RET
SYM_FUNC_END(entry_ibpb)
/* For KVM */