Messages in this thread | | | Subject | Re: [RFT/RFC PATCH v3 4/5] arm: Use common cpu_topology | From | Atish Patra <> | Date | Mon, 15 Apr 2019 14:16:43 -0700 |
| |
On 4/15/19 8:31 AM, Sudeep Holla wrote: > On Wed, Mar 20, 2019 at 04:48:05PM -0700, Atish Patra wrote: >> Currently, ARM32 and ARM64 uses different data structures to >> represent their cpu toplogies. Since, we are moving the ARM64 >> topology to common code to be used by other architectures, we >> can reuse that for ARM32 as well. >> >> Signed-off-by: Atish Patra <atish.patra@wdc.com> >> --- >> arch/arm/include/asm/topology.h | 22 +--------------------- >> arch/arm/kernel/topology.c | 10 +++++----- >> include/linux/arch_topology.h | 10 +++++++++- >> 3 files changed, 15 insertions(+), 27 deletions(-) >> > > [...] > >> diff --git a/include/linux/arch_topology.h b/include/linux/arch_topology.h >> index d4e76e0a..7c850611 100644 >> --- a/include/linux/arch_topology.h >> +++ b/include/linux/arch_topology.h >> @@ -36,17 +36,25 @@ unsigned long topology_get_freq_scale(int cpu) >> struct cpu_topology { >> int thread_id; >> int core_id; >> +#ifdef CONFIG_ARM_CPU_TOPOLOGY >> + int socket_id; > > Sorry, but I can't find any reason why we need to do this ifdef dance > here, especially for socket_id vs package_id ?
I was not sure if we can rename socket_id to package_id from a semantic point of view. If you are okay with it, I will change it to package_id and send a v4.
Other's I can understand > as there are new, but I am sure we can find a way and get away with > #ifdefery here completely. > That would be good. Any suggestions on how to do that?
>> +#else >> int package_id; >> int llc_id; >> + cpumask_t llc_sibling; >> +#endif >> cpumask_t thread_sibling; >> cpumask_t core_sibling; >> - cpumask_t llc_sibling; >> }; >> >> #ifdef CONFIG_GENERIC_ARCH_TOPOLOGY >> extern struct cpu_topology cpu_topology[NR_CPUS]; >> >> +#ifdef CONFIG_ARM_CPU_TOPOLOGY >> +#define topology_physical_package_id(cpu) (cpu_topology[cpu].socket_id) >> +#else >> #define topology_physical_package_id(cpu) (cpu_topology[cpu].package_id) >> +#endif > > Since all callsites must use topology_physical_package_id, we should be > able to rename socket_id to package_id easily. > Sure.
Regards, Atish > -- > Regards, > Sudeep >
| |