Re: [PATCH] idle/x86: remove the call to boot_init_stack_canary() from cpu_startup_entry()

From: Juergen Gross
Date: Fri Oct 19 2018 - 06:11:44 EST


On 19/10/2018 11:29, Christophe Leroy wrote:
> commit d7880812b359 ("idle: Add the stack canary init to
> cpu_startup_entry()") added the call to boot_init_stack_canary()
> in cpu_startup_entry() in an #ifdef CONFIG_X86 statement, with
> the intention to remove that #ifdef later.
>
> While implementing stack protector for powerpc, it has been
> observed that calling boot_init_stack_canary() is also needed
> for powerpc which uses per task (TLS) stack canary like the X86.
>
> However, calling boot_init_stack_canary() would break arches
> using global stack canary (ARM, SH, MIPS and XTENSA).
>
> Instead of adding modifying the #ifdef in a
> implemented the call to boot_init_stack_canary() in the function
> calling cpu_startup_entry()

I can't parse this sentence.

>
> On x86, we have two functions calling cpu_startup_entry():
> - start_secondary()
> - cpu_bringup_and_idle()
>
> start_secondary() already calls boot_init_stack_canary().
>
> This patch adds the call to boot_init_stack_canary() in
> cpu_bringup_and_idle() and removes it from cpu_startup_entry()
>
> Signed-off-by: Christophe Leroy <christophe.leroy@xxxxxx>

With the commit message made understandable you can add my

Reviewed-by: Juergen Gross <jgross@xxxxxxxx>


Juergen