mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-24 15:31:14 +07:00
[PATCH] ppc64: Fix UP kernel build
CONFIG_KEXEC breaks UP builds because of a misspelled smp_release_cpus(). Also, the function isn't defined unless built with CONFIG_SMP but it is needed if we are to go from a UP to SMP kernel. Enable it and document it. Thanks to Steven Winiecki for reporting this and to Milton for remembering how it's supposed to work and why. Signed-off-by: Olof Johansson <olof@lixom.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
556e58febf
commit
75eedfed3e
@ -2071,7 +2071,7 @@ _GLOBAL(hmt_start_secondary)
|
||||
blr
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_SMP) && !defined(CONFIG_PPC_ISERIES)
|
||||
#if defined(CONFIG_KEXEC) || (defined(CONFIG_SMP) && !defined(CONFIG_PPC_ISERIES))
|
||||
_GLOBAL(smp_release_cpus)
|
||||
/* All secondary cpus are spinning on a common
|
||||
* spinloop, release them all now so they can start
|
||||
|
@ -243,13 +243,17 @@ static void kexec_prepare_cpus(void)
|
||||
|
||||
static void kexec_prepare_cpus(void)
|
||||
{
|
||||
extern void smp_release_cpus(void);
|
||||
/*
|
||||
* move the secondarys to us so that we can copy
|
||||
* the new kernel 0-0x100 safely
|
||||
*
|
||||
* do this if kexec in setup.c ?
|
||||
*
|
||||
* We need to release the cpus if we are ever going from an
|
||||
* UP to an SMP kernel.
|
||||
*/
|
||||
smp_relase_cpus();
|
||||
smp_release_cpus();
|
||||
if (ppc_md.cpu_irq_down)
|
||||
ppc_md.cpu_irq_down();
|
||||
local_irq_disable();
|
||||
|
Loading…
Reference in New Issue
Block a user