Message ID | 20231017022806.4523-2-piliu@redhat.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | enable nr_cpus for powerpc | expand |
On 17/10/23 7:58 am, Pingfan Liu wrote: > In order to identify the boot cpu, its intserv[] should be recorded and > checked in smp_setup_cpu_maps(). > > smp_setup_cpu_maps() is shared between PPC64 and PPC32. Since PPC64 has > already used boot_cpu_hwid to carry that information, enabling this > variable on PPC32 so later it can also be used to carry that information > for PPC32 in the coming patch. > > Signed-off-by: Pingfan Liu <piliu@redhat.com> > Cc: Michael Ellerman <mpe@ellerman.id.au> > Cc: Nicholas Piggin <npiggin@gmail.com> > Cc: Christophe Leroy <christophe.leroy@csgroup.eu> > Cc: Mahesh Salgaonkar <mahesh@linux.ibm.com> > Cc: Wen Xiong <wenxiong@us.ibm.com> > Cc: Baoquan He <bhe@redhat.com> > Cc: Ming Lei <ming.lei@redhat.com> > Cc: Sourabh Jain <sourabhjain@linux.ibm.com> > Cc: Hari Bathini <hbathini@linux.ibm.com> > Cc: kexec@lists.infradead.org > To: linuxppc-dev@lists.ozlabs.org LGTM. Acked-by: Hari Bathini <hbathini@linux.ibm.com> > --- > arch/powerpc/include/asm/smp.h | 2 +- > arch/powerpc/kernel/prom.c | 3 +-- > arch/powerpc/kernel/setup-common.c | 2 -- > 3 files changed, 2 insertions(+), 5 deletions(-) > > diff --git a/arch/powerpc/include/asm/smp.h b/arch/powerpc/include/asm/smp.h > index aaaa576d0e15..5db9178cc800 100644 > --- a/arch/powerpc/include/asm/smp.h > +++ b/arch/powerpc/include/asm/smp.h > @@ -26,7 +26,7 @@ > #include <asm/percpu.h> > > extern int boot_cpuid; > -extern int boot_cpu_hwid; /* PPC64 only */ > +extern int boot_cpu_hwid; > extern int spinning_secondaries; > extern u32 *cpu_to_phys_id; > extern bool coregroup_enabled; > diff --git a/arch/powerpc/kernel/prom.c b/arch/powerpc/kernel/prom.c > index 0b5878c3125b..ec82f5bda908 100644 > --- a/arch/powerpc/kernel/prom.c > +++ b/arch/powerpc/kernel/prom.c > @@ -372,8 +372,7 @@ static int __init early_init_dt_scan_cpus(unsigned long node, > be32_to_cpu(intserv[found_thread])); > boot_cpuid = found; > > - if (IS_ENABLED(CONFIG_PPC64)) > - boot_cpu_hwid = be32_to_cpu(intserv[found_thread]); > + boot_cpu_hwid = be32_to_cpu(intserv[found_thread]); > > /* > * PAPR defines "logical" PVR values for cpus that > diff --git a/arch/powerpc/kernel/setup-common.c b/arch/powerpc/kernel/setup-common.c > index 2f1026fba00d..707f0490639d 100644 > --- a/arch/powerpc/kernel/setup-common.c > +++ b/arch/powerpc/kernel/setup-common.c > @@ -87,9 +87,7 @@ EXPORT_SYMBOL(machine_id); > int boot_cpuid = -1; > EXPORT_SYMBOL_GPL(boot_cpuid); > > -#ifdef CONFIG_PPC64 > int boot_cpu_hwid = -1; > -#endif > > /* > * These are used in binfmt_elf.c to put aux entries on the stack
diff --git a/arch/powerpc/include/asm/smp.h b/arch/powerpc/include/asm/smp.h index aaaa576d0e15..5db9178cc800 100644 --- a/arch/powerpc/include/asm/smp.h +++ b/arch/powerpc/include/asm/smp.h @@ -26,7 +26,7 @@ #include <asm/percpu.h> extern int boot_cpuid; -extern int boot_cpu_hwid; /* PPC64 only */ +extern int boot_cpu_hwid; extern int spinning_secondaries; extern u32 *cpu_to_phys_id; extern bool coregroup_enabled; diff --git a/arch/powerpc/kernel/prom.c b/arch/powerpc/kernel/prom.c index 0b5878c3125b..ec82f5bda908 100644 --- a/arch/powerpc/kernel/prom.c +++ b/arch/powerpc/kernel/prom.c @@ -372,8 +372,7 @@ static int __init early_init_dt_scan_cpus(unsigned long node, be32_to_cpu(intserv[found_thread])); boot_cpuid = found; - if (IS_ENABLED(CONFIG_PPC64)) - boot_cpu_hwid = be32_to_cpu(intserv[found_thread]); + boot_cpu_hwid = be32_to_cpu(intserv[found_thread]); /* * PAPR defines "logical" PVR values for cpus that diff --git a/arch/powerpc/kernel/setup-common.c b/arch/powerpc/kernel/setup-common.c index 2f1026fba00d..707f0490639d 100644 --- a/arch/powerpc/kernel/setup-common.c +++ b/arch/powerpc/kernel/setup-common.c @@ -87,9 +87,7 @@ EXPORT_SYMBOL(machine_id); int boot_cpuid = -1; EXPORT_SYMBOL_GPL(boot_cpuid); -#ifdef CONFIG_PPC64 int boot_cpu_hwid = -1; -#endif /* * These are used in binfmt_elf.c to put aux entries on the stack
In order to identify the boot cpu, its intserv[] should be recorded and checked in smp_setup_cpu_maps(). smp_setup_cpu_maps() is shared between PPC64 and PPC32. Since PPC64 has already used boot_cpu_hwid to carry that information, enabling this variable on PPC32 so later it can also be used to carry that information for PPC32 in the coming patch. Signed-off-by: Pingfan Liu <piliu@redhat.com> Cc: Michael Ellerman <mpe@ellerman.id.au> Cc: Nicholas Piggin <npiggin@gmail.com> Cc: Christophe Leroy <christophe.leroy@csgroup.eu> Cc: Mahesh Salgaonkar <mahesh@linux.ibm.com> Cc: Wen Xiong <wenxiong@us.ibm.com> Cc: Baoquan He <bhe@redhat.com> Cc: Ming Lei <ming.lei@redhat.com> Cc: Sourabh Jain <sourabhjain@linux.ibm.com> Cc: Hari Bathini <hbathini@linux.ibm.com> Cc: kexec@lists.infradead.org To: linuxppc-dev@lists.ozlabs.org --- arch/powerpc/include/asm/smp.h | 2 +- arch/powerpc/kernel/prom.c | 3 +-- arch/powerpc/kernel/setup-common.c | 2 -- 3 files changed, 2 insertions(+), 5 deletions(-)