Re: [PATCH v8 24/33] x86/fred: disallow the swapgs instruction when FRED is enabled
From: Thomas Gleixner
Date: Mon Jun 05 2023 - 09:47:25 EST
On Mon, Apr 10 2023 at 01:14, Xin Li wrote:
> From: "H. Peter Anvin (Intel)" <hpa@xxxxxxxxx>
>
> The FRED architecture establishes the full supervisor/user through:
> 1) FRED event delivery swaps the value of the GS base address and
> that of the IA32_KERNEL_GS_BASE MSR.
> 2) ERETU swaps the value of the GS base address and that of the
> IA32_KERNEL_GS_BASE MSR.
> Thus, the swapgs instruction is disallowed when FRED is enabled,
> otherwise it causes #UD.
Which does not explain why writing directly to the IA32_KERNEL_GS_BASE
MSR is doing the right thing.
Thanks,
tglx