x86/CPU/AMD: Make sure EFER[AIBRSE] is set
authorBorislav Petkov (AMD) <bp@alien8.de>
Sat, 25 Feb 2023 00:11:31 +0000 (01:11 +0100)
committerBorislav Petkov (AMD) <bp@alien8.de>
Thu, 16 Mar 2023 10:50:00 +0000 (11:50 +0100)
commit8cc68c9c9e92dbaae51a711454c66eb668045508
tree83bc031638fb3e71f084700fc94f4644c99d0357
parentfe15c26ee26efa11741a7b632e9f23b01aca4cc6
x86/CPU/AMD: Make sure EFER[AIBRSE] is set

The AutoIBRS bit gets set only on the BSP as part of determining which
mitigation to enable on AMD. Setting on the APs relies on the
circumstance that the APs get booted through the trampoline and EFER
- the MSR which contains that bit - gets replicated on every AP from the
BSP.

However, this can change in the future and considering the security
implications of this bit not being set on every CPU, make sure it is set
by verifying EFER later in the boot process and on every AP.

Reported-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Acked-by: Dave Hansen <dave.hansen@linux.intel.com>
Link: https://lore.kernel.org/r/20230224185257.o3mcmloei5zqu7wa@treble
arch/x86/kernel/cpu/amd.c
arch/x86/kernel/cpu/bugs.c
arch/x86/kernel/cpu/cpu.h