OpenCloudOS-Kernel/arch/x86/include/asm/fpu
Yu-cheng Yu eeedf15336 x86/fpu: Introduce copy_supervisor_to_kernel()
The XSAVES instruction takes a mask and saves only the features specified
in that mask.  The kernel normally specifies that all features be saved.

XSAVES also unconditionally uses the "compacted format" which means that
all specified features are saved next to each other in memory.  If a
feature is removed from the mask, all the features after it will "move
up" into earlier locations in the buffer.

Introduce copy_supervisor_to_kernel(), which saves only supervisor states
and then moves those states into the standard location where they are
normally found.

Signed-off-by: Yu-cheng Yu <yu-cheng.yu@intel.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20200512145444.15483-9-yu-cheng.yu@intel.com
2020-05-16 11:24:14 +02:00
..
api.h x86/fpu: Defer FPU state load until return to userspace 2019-04-12 19:34:47 +02:00
internal.h x86/fpu/xstate: Update copy_kernel_to_xregs_err() for supervisor states 2020-05-14 16:46:43 +02:00
regset.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
signal.h x86/fpu: Remove fpu->initialized usage in __fpu__restore_sig() 2019-04-09 19:27:29 +02:00
types.h x86/fpu: Remove fpu->initialized 2019-04-10 15:42:40 +02:00
xstate.h x86/fpu: Introduce copy_supervisor_to_kernel() 2020-05-16 11:24:14 +02:00