diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2021-10-13 17:55:46 +0300 |
---|---|---|
committer | Borislav Petkov <bp@suse.de> | 2021-10-21 14:51:42 +0300 |
commit | 248452ce21aeb08da2d2af23d88f890886bd379f (patch) | |
tree | cfc901275ac0e1f6e4741d3cf5c5fc129acf14e5 /arch/x86/include | |
parent | 2dd8eedc80b184bb16aad697ae60367c5bf07299 (diff) | |
download | linux-248452ce21aeb08da2d2af23d88f890886bd379f.tar.xz |
x86/fpu: Add size and mask information to fpstate
Add state size and feature mask information to the fpstate container. This
will be used for runtime checks with the upcoming support for dynamically
enabled features and dynamically sized buffers. That avoids conditionals
all over the place as the required information is accessible for both
default and extended buffers.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20211013145322.921388806@linutronix.de
Diffstat (limited to 'arch/x86/include')
-rw-r--r-- | arch/x86/include/asm/fpu/types.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/x86/include/asm/fpu/types.h b/arch/x86/include/asm/fpu/types.h index 297e3b4920cb..3a12e97e475d 100644 --- a/arch/x86/include/asm/fpu/types.h +++ b/arch/x86/include/asm/fpu/types.h @@ -310,6 +310,18 @@ union fpregs_state { }; struct fpstate { + /* @kernel_size: The size of the kernel register image */ + unsigned int size; + + /* @user_size: The size in non-compacted UABI format */ + unsigned int user_size; + + /* @xfeatures: xfeatures for which the storage is sized */ + u64 xfeatures; + + /* @user_xfeatures: xfeatures valid in UABI buffers */ + u64 user_xfeatures; + /* @regs: The register state union for all supported formats */ union fpregs_state regs; |