diff --git a/arch/x86/include/asm/fpu-internal.h b/arch/x86/include/asm/fpu-internal.h index b68e8f04c38a20d2a2ef7eacdc234665fbb114e9..02e0e97d8be7f1fc26457e6aa4a5a1258eda5f4c 100644 --- a/arch/x86/include/asm/fpu-internal.h +++ b/arch/x86/include/asm/fpu-internal.h @@ -39,7 +39,7 @@ int ia32_setup_frame(int sig, struct ksignal *ksig, #endif extern unsigned int mxcsr_feature_mask; -extern void fpu_init(void); +extern void fpu__cpu_init(void); extern void eager_fpu_init(void); DECLARE_PER_CPU(struct task_struct *, fpu_owner_task); diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c index 60a29d290e2a62e8f4a629ae1735abcf671ed4a5..b8035b8dd1866cb8e944029d15a47da6eb0ec14e 100644 --- a/arch/x86/kernel/cpu/common.c +++ b/arch/x86/kernel/cpu/common.c @@ -1439,7 +1439,7 @@ void cpu_init(void) clear_all_debug_regs(); dbg_restore_debug_regs(); - fpu_init(); + fpu__cpu_init(); if (is_uv_system()) uv_cpu_init(); @@ -1495,7 +1495,7 @@ void cpu_init(void) clear_all_debug_regs(); dbg_restore_debug_regs(); - fpu_init(); + fpu__cpu_init(); } #endif diff --git a/arch/x86/kernel/i387.c b/arch/x86/kernel/i387.c index e0c16e86deb0451d58cb7d8fd821dff1b3c88d3b..5b4672584e658f1266bc2e1113dda498457177ef 100644 --- a/arch/x86/kernel/i387.c +++ b/arch/x86/kernel/i387.c @@ -183,11 +183,13 @@ static void init_thread_xstate(void) } /* - * Called at bootup to set up the initial FPU state that is later cloned - * into all processes. + * Called on the boot CPU at bootup to set up the initial FPU state that + * is later cloned into all processes. + * + * Also called on secondary CPUs to set up the FPU state of their + * idle threads. */ - -void fpu_init(void) +void fpu__cpu_init(void) { unsigned long cr0; unsigned long cr4_mask = 0; diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c index 46957ead3060eecb5e76b6f6daf3b498a6b6a5e9..43f8704b7289a46ec2986af3b8c85db2aee5f955 100644 --- a/arch/x86/xen/enlighten.c +++ b/arch/x86/xen/enlighten.c @@ -1423,7 +1423,7 @@ static void xen_pvh_set_cr_flags(int cpu) return; /* * For BSP, PSE PGE are set in probe_page_size_mask(), for APs - * set them here. For all, OSFXSR OSXMMEXCPT are set in fpu_init. + * set them here. For all, OSFXSR OSXMMEXCPT are set in fpu__cpu_init(). */ if (cpu_has_pse) cr4_set_bits_and_update_boot(X86_CR4_PSE);