[PATCH v2 2/3] powerpc: Call chained reset handlers during reset

Nicholas Piggin npiggin at gmail.com
Mon Aug 1 13:47:34 AEST 2016


On Thu, 28 Jul 2016 16:07:17 -0700
Andrey Smirnov <andrew.smirnov at gmail.com> wrote:

> Call out to all restart handlers that were added via
> register_restart_handler() API when restarting the machine.
> 
> Signed-off-by: Andrey Smirnov <andrew.smirnov at gmail.com>
> ---
> 
> No changes compared to v1
> 
>  arch/powerpc/kernel/setup-common.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/arch/powerpc/kernel/setup-common.c
> b/arch/powerpc/kernel/setup-common.c index 5cd3283..205d073 100644
> --- a/arch/powerpc/kernel/setup-common.c
> +++ b/arch/powerpc/kernel/setup-common.c
> @@ -145,6 +145,10 @@ void machine_restart(char *cmd)
>  		ppc_md.restart(cmd);
>  
>  	smp_send_stop();
> +
> +	do_kernel_restart(cmd);
> +	mdelay(1000);
> +
>  	machine_hang();
>  }
>  

Ah, I see why you don't move smp_send_stop(). 3 other architectures
call do_kernel_restart(). arm and arm64 call it with
local_irq_disabled(). arm and mips insert the 1s delay. All call it
after smp_send_stop(). I don't see the harm in the delay. Should we
call it with local interrupts disabled?



More information about the Linuxppc-dev mailing list