x86/bugs: Optimize SPEC_CTRL MSR writes
authorPeter Zijlstra <peterz@infradead.org>
Tue, 14 Jun 2022 21:15:54 +0000 (23:15 +0200)
committerBorislav Petkov <bp@suse.de>
Mon, 27 Jun 2022 08:33:59 +0000 (10:33 +0200)
commitc779bc1a9002fa474175b80e72b85c9bf628abb0
treee79fbab2ca5f15aad4a76200cd56c6ae899dfd67
parent2dbb887e875b1de3ca8f40ddf26bcfe55798c609
x86/bugs: Optimize SPEC_CTRL MSR writes

When changing SPEC_CTRL for user control, the WRMSR can be delayed
until return-to-user when KERNEL_IBRS has been enabled.

This avoids an MSR write during context switch.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
Reviewed-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
arch/x86/include/asm/nospec-branch.h
arch/x86/kernel/cpu/bugs.c
arch/x86/kernel/process.c