x86/fpu/xstate: Move remaining xfeature helpers to core
authorThomas Gleixner <tglx@linutronix.de>
Thu, 14 Oct 2021 23:09:40 +0000 (01:09 +0200)
committerBorislav Petkov <bp@suse.de>
Fri, 22 Oct 2021 09:10:48 +0000 (11:10 +0200)
Now that everything is mopped up, move all the helpers and prototypes into
the core header. They are not required by the outside.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20211014230739.514095101@linutronix.de
arch/x86/include/asm/fpu/xstate.h
arch/x86/kernel/fpu/xstate.h

index 61ae396..43ae89d 100644 (file)
 #define XFEATURE_MASK_FPSTATE  (XFEATURE_MASK_USER_RESTORE | \
                                 XFEATURE_MASK_SUPERVISOR_SUPPORTED)
 
-static inline u64 xfeatures_mask_supervisor(void)
-{
-       return fpu_kernel_cfg.max_features & XFEATURE_MASK_SUPERVISOR_SUPPORTED;
-}
-
-static inline u64 xfeatures_mask_independent(void)
-{
-       if (!boot_cpu_has(X86_FEATURE_ARCH_LBR))
-               return XFEATURE_MASK_INDEPENDENT & ~XFEATURE_MASK_LBR;
-
-       return XFEATURE_MASK_INDEPENDENT;
-}
-
 extern u64 xstate_fx_sw_bytes[USER_XSTATE_FX_SW_WORDS];
 
 extern void __init update_regset_xstate_info(unsigned int size,
index 3d45eb0..a1aa0ba 100644 (file)
@@ -35,6 +35,19 @@ extern void fpu__init_system_xstate(unsigned int legacy_size);
 
 extern void *get_xsave_addr(struct xregs_state *xsave, int xfeature_nr);
 
+static inline u64 xfeatures_mask_supervisor(void)
+{
+       return fpu_kernel_cfg.max_features & XFEATURE_MASK_SUPERVISOR_SUPPORTED;
+}
+
+static inline u64 xfeatures_mask_independent(void)
+{
+       if (!cpu_feature_enabled(X86_FEATURE_ARCH_LBR))
+               return XFEATURE_MASK_INDEPENDENT & ~XFEATURE_MASK_LBR;
+
+       return XFEATURE_MASK_INDEPENDENT;
+}
+
 /* XSAVE/XRSTOR wrapper functions */
 
 #ifdef CONFIG_X86_64