[PATCH] powerpc/power8: fix secondary CPUs hanging on boot for HV=0
In __restore_cpu_power8 we determine if we are HV and if not, we return before setting HV only resources. Unfortunately we forgot to restore the link register from r11 before returning. This will happen on boot and with secondary CPUs not coming online. This adds the missing link register restore. Signed-off-by: Michael Neuling diff --git a/arch/powerpc/kernel/cpu_setup_power.S b/arch/powerpc/kernel/cpu_setup_power.S index ea847ab..1167008 100644 --- a/arch/powerpc/kernel/cpu_setup_power.S +++ b/arch/powerpc/kernel/cpu_setup_power.S @@ -66,6 +66,7 @@ _GLOBAL(__restore_cpu_power8) bl __init_FSCR mfmsr r3 rldicl. r0,r3,4,63 + mtlrr11 beqlr li r0,0 mtspr SPRN_LPID,r0 ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: [PATCH] powerpc/power8: fix secondary CPUs hanging on boot for HV=0
Michael Neuling wrote: > In __restore_cpu_power8 we determine if we are HV and if not, we return > before setting HV only resources. > > Unfortunately we forgot to restore the link register from r11 before > returning. > > This will happen on boot and with secondary CPUs not coming online. > > This adds the missing link register restore. > > Signed-off-by: Michael Neuling cc: sta...@kernel.org > > diff --git a/arch/powerpc/kernel/cpu_setup_power.S > b/arch/powerpc/kernel/cpu_setup_power.S > index ea847ab..1167008 100644 > --- a/arch/powerpc/kernel/cpu_setup_power.S > +++ b/arch/powerpc/kernel/cpu_setup_power.S > @@ -66,6 +66,7 @@ _GLOBAL(__restore_cpu_power8) > bl __init_FSCR > mfmsr r3 > rldicl. r0,r3,4,63 > + mtlrr11 > beqlr > li r0,0 > mtspr SPRN_LPID,r0 ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev