[PATCH] powerpc/64: don't refer nr_cpu_ids in asm code when it's undefined

Stephen Rothwell sfr at canb.auug.org.au
Wed Sep 21 08:20:06 AEST 2022


Hi Yury,

On Tue, 20 Sep 2022 08:29:35 -0700 Yury Norov <yury.norov at gmail.com> wrote:
>

> diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S
> index cf2c08902c05..7cb97881635e 100644
> --- a/arch/powerpc/kernel/head_64.S
> +++ b/arch/powerpc/kernel/head_64.S
> @@ -400,7 +400,11 @@ generic_secondary_common_init:
>  #else
>  	LOAD_REG_ADDR(r8, paca_ptrs)	/* Load paca_ptrs pointe	 */
>  	ld	r8,0(r8)		/* Get base vaddr of array	 */
> +#if (NR_CPUS == 1) || defined(CONFIG_FORCE_NR_CPUS)
> +	LOAD_REG_IMMEDIATE(r7, NR_CPUS)
> +#else
>  	LOAD_REG_ADDR(r7, nr_cpu_ids)	/* Load nr_cpu_ids address       */
> +#endif
>  	lwz	r7,0(r7)		/* also the max paca allocated 	 */
>  	li	r5,0			/* logical cpu id                */
>  1:
> -- 
> 2.34.1
> 

I don't know PPC assembly very well, but should the #endif be one line
lower so that the constant is not dereferenced in the non-#else case? 

-- 
Cheers,
Stephen Rothwell
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.ozlabs.org/pipermail/linuxppc-dev/attachments/20220921/a441afc6/attachment-0001.sig>


More information about the Linuxppc-dev mailing list