Messages in this thread | | | Date | Tue, 20 Sep 2022 15:41:23 -0700 | From | Yury Norov <> | Subject | Re: [PATCH] powerpc/64: don't refer nr_cpu_ids in asm code when it's undefined |
| |
On Wed, Sep 21, 2022 at 08:20:06AM +1000, Stephen Rothwell wrote: > Hi Yury, > > On Tue, 20 Sep 2022 08:29:35 -0700 Yury Norov <yury.norov@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?
Looks like you're right. Thanks, I'll send a v2.
| |