[PATCH] powerpc/power8: fix secondary CPUs hanging on boot for HV=0

2013-04-25 Thread Michael Neuling
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

2013-04-25 Thread Michael Neuling
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