Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 82d4150c authored by Robert Richter's avatar Robert Richter Committed by H. Peter Anvin
Browse files

x86, xsave: Move boot cpu initialization to xsave_init()



This patch moves boot cpu initialization to xsave_init(). Now all cpus
are initialized in one single function.

Signed-off-by: default avatarRobert Richter <robert.richter@amd.com>
LKML-Reference: <1279651857-24639-5-git-send-email-robert.richter@amd.com>
Acked-by: default avatarSuresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: default avatarH. Peter Anvin <hpa@linux.intel.com>
parent db10db48
Loading
Loading
Loading
Loading
+0 −6
Original line number Diff line number Diff line
@@ -1270,12 +1270,6 @@ void __cpuinit cpu_init(void)
	clear_used_math();
	mxcsr_feature_mask_init();

	/*
	 * Boot processor to setup the FP and extended state context info.
	 */
	if (!smp_processor_id())
		init_thread_xstate();

	xsave_init();
}
#endif
+0 −5
Original line number Diff line number Diff line
@@ -93,11 +93,6 @@ void __cpuinit fpu_init(void)

	write_cr0(oldcr0 & ~(X86_CR0_TS|X86_CR0_EM)); /* clear TS and EM */

	/*
	 * Boot processor to setup the FP and extended state context info.
	 */
	if (!smp_processor_id())
		init_thread_xstate();
	xsave_init();

	mxcsr_feature_mask_init();
+12 −2
Original line number Diff line number Diff line
@@ -360,7 +360,7 @@ unsigned int sig_xstate_size = sizeof(struct _fpstate);
/*
 * Enable the extended processor state save/restore feature
 */
void __cpuinit xsave_init(void)
static void __cpuinit __xsave_init(void)
{
	if (!cpu_has_xsave)
		return;
@@ -446,7 +446,7 @@ void __ref xsave_cntxt_init(void)
	 * Support only the state known to OS.
	 */
	pcntxt_mask = pcntxt_mask & XCNTXT_MASK;
	xsave_init();
	__xsave_init();

	/*
	 * Recompute the context size for enabled features
@@ -463,3 +463,13 @@ void __ref xsave_cntxt_init(void)
	       "cntxt size 0x%x\n",
	       pcntxt_mask, xstate_size);
}

void __cpuinit xsave_init(void)
{
	/*
	 * Boot processor to setup the FP and extended state context info.
	 */
	if (!smp_processor_id())
		init_thread_xstate();
	__xsave_init();
}