]> Git Repo - linux.git/commit
x86/fpu: Update XFD state where required
authorChang S. Bae <[email protected]>
Thu, 21 Oct 2021 22:55:20 +0000 (15:55 -0700)
committerBorislav Petkov <[email protected]>
Tue, 26 Oct 2021 08:53:02 +0000 (10:53 +0200)
commit672365477ae8afca5a1cca98c1deb733235e4525
tree9e41b4eb5c5a3dff90c0ceb443f071035bcc0d4a
parent5529acf47ec31ece0815f69d43f5e6a1e485a0f3
x86/fpu: Update XFD state where required

The IA32_XFD_MSR allows to arm #NM traps for XSTATE components which are
enabled in XCR0. The register has to be restored before the tasks XSTATE is
restored. The life time rules are the same as for FPU state.

XFD is updated on return to userspace only when the FPU state of the task
is not up to date in the registers. It's updated before the XRSTORS so
that eventually enabled dynamic features are restored as well and not
brought into init state.

Also in signal handling for restoring FPU state from user space the
correctness of the XFD state has to be ensured.

Add it to CPU initialization and resume as well.

Signed-off-by: Chang S. Bae <[email protected]>
Signed-off-by: Thomas Gleixner <[email protected]>
Signed-off-by: Borislav Petkov <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
arch/x86/kernel/fpu/context.h
arch/x86/kernel/fpu/core.c
arch/x86/kernel/fpu/signal.c
arch/x86/kernel/fpu/xstate.c
arch/x86/kernel/fpu/xstate.h
This page took 0.056613 seconds and 4 git commands to generate.