init: Invoke arch_cpu_finalize_init() earlier
stable inclusion from stable-v5.10.189 commit 09658b81d158c15112a56323d8db8fed83e8cd4a category: bugfix bugzilla: https://gitee.com/openeuler/intel-kernel/issues/I8LVBS CVE: N/A Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=09658b81d158c15112a56323d8db8fed83e8cd4a ------------------------------------- Intel-SIG: commit 09658b81d158 ("init: Invoke arch_cpu_finalize_init() earlier") Backport x86 related patches from 5.10.189 upstream ------------------------------------- commit 9df9d2f0 upstream X86 is reworking the boot process so that initializations which are not required during early boot can be moved into the late boot process and out of the fragile and restricted initial boot phase. arch_cpu_finalize_init() is the obvious place to do such initializations, but arch_cpu_finalize_init() is invoked too late in start_kernel() e.g. for initializing the FPU completely. fork_init() requires that the FPU is initialized as the size of task_struct on X86 depends on the size of the required FPU register buffer. Fortunately none of the init calls between calibrate_delay() and arch_cpu_finalize_init() is relevant for the functionality of arch_cpu_finalize_init(). Invoke it right after calibrate_delay() where everything which is relevant for arch_cpu_finalize_init() has been set up already. No functional change intended. Signed-off-by:Thomas Gleixner <tglx@linutronix.de> Reviewed-by:
Rick Edgecombe <rick.p.edgecombe@intel.com> Link: https://lore.kernel.org/r/20230613224545.612182854@linutronix.de Signed-off-by:
Daniel Sneddon <daniel.sneddon@linux.intel.com> Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by:
Aichun Shi <aichun.shi@intel.com>
Loading
Please sign in to comment