Re: [PATCH v3 4/6] powerpc/fsl_booke/64: do not clear the BSS for the second pass

From: Scott Wood
Date: Wed Mar 04 2020 - 16:49:50 EST


On Thu, 2020-02-06 at 10:58 +0800, Jason Yan wrote:
> The BSS section has already cleared out in the first pass. No need to
> clear it again. This can save some time when booting with KASLR
> enabled.
>
> Signed-off-by: Jason Yan <yanaijie@xxxxxxxxxx>
> Cc: Scott Wood <oss@xxxxxxxxxxxx>
> Cc: Diana Craciun <diana.craciun@xxxxxxx>
> Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
> Cc: Christophe Leroy <christophe.leroy@xxxxxx>
> Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
> Cc: Paul Mackerras <paulus@xxxxxxxxx>
> Cc: Nicholas Piggin <npiggin@xxxxxxxxx>
> Cc: Kees Cook <keescook@xxxxxxxxxxxx>
> ---
> arch/powerpc/kernel/head_64.S | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S
> index 744624140fb8..8c644e7c3eaf 100644
> --- a/arch/powerpc/kernel/head_64.S
> +++ b/arch/powerpc/kernel/head_64.S
> @@ -914,6 +914,13 @@ start_here_multiplatform:
> bl relative_toc
> tovirt(r2,r2)
>
> + /* Do not clear the BSS for the second pass if randomized */
> + LOAD_REG_ADDR(r3, kernstart_virt_addr)
> + lwz r3,0(r3)
> + LOAD_REG_IMMEDIATE(r4, KERNELBASE)
> + cmpw r3,r4
> + bne 4f

These are 64-bit values.

-Scott