aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/xsave.h
diff options
context:
space:
mode:
authorRobert Richter <robert.richter@amd.com>2010-07-21 13:03:52 -0400
committerH. Peter Anvin <hpa@linux.intel.com>2010-07-21 17:06:04 -0400
commit0e49bf66d2ca649b167428adddbbbe9d9bd4894c (patch)
tree741f170dbb160ece127b2ab497f9fc9d1e3bd1bc /arch/x86/include/asm/xsave.h
parent82d4150cec83b9775f84810b39a1c0b91585d429 (diff)
x86, xsave: Separate fpu and xsave initialization
As xsave also supports other than fpu features, it should be initialized independently of the fpu. This patch moves this out of fpu initialization. There is also a lot of cross referencing between fpu and xsave code. This patch reduces this by making xsave_cntxt_init() and init_thread_xstate() static functions. The patch moves the cpu_has_xsave check at the beginning of xsave_init(). All other checks may removed then. Signed-off-by: Robert Richter <robert.richter@amd.com> LKML-Reference: <1279731838-1522-2-git-send-email-robert.richter@amd.com> Acked-by: Suresh Siddha <suresh.b.siddha@intel.com> Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'arch/x86/include/asm/xsave.h')
-rw-r--r--arch/x86/include/asm/xsave.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/arch/x86/include/asm/xsave.h b/arch/x86/include/asm/xsave.h
index 94d5f84d89f2..4d3b5d1fc028 100644
--- a/arch/x86/include/asm/xsave.h
+++ b/arch/x86/include/asm/xsave.h
@@ -28,7 +28,6 @@ extern u64 pcntxt_mask;
28extern struct xsave_struct *init_xstate_buf; 28extern struct xsave_struct *init_xstate_buf;
29extern u64 xstate_fx_sw_bytes[USER_XSTATE_FX_SW_WORDS]; 29extern u64 xstate_fx_sw_bytes[USER_XSTATE_FX_SW_WORDS];
30 30
31extern void xsave_cntxt_init(void);
32extern void xsave_init(void); 31extern void xsave_init(void);
33extern void update_regset_xstate_info(unsigned int size, u64 xstate_mask); 32extern void update_regset_xstate_info(unsigned int size, u64 xstate_mask);
34extern int init_fpu(struct task_struct *child); 33extern int init_fpu(struct task_struct *child);