Messages in this thread Patch in this message | | | Subject | Re: [PATCH v3 4/7] arm, sched/topology: Remove SD_SHARE_POWERDOMAIN | From | Dietmar Eggemann <> | Date | Thu, 2 Jul 2020 18:44:18 +0200 |
| |
On 01/07/2020 21:06, Valentin Schneider wrote: > This flag was introduced in 2014 by commit > > d77b3ed5c9f8 ("sched: Add a new SD_SHARE_POWERDOMAIN for sched_domain") > > but AFAIA it was never leveraged by the scheduler. The closest thing I can > think of is EAS caring about frequency domains, and it does that by > leveraging performance domains.
... and even this was purely out of tree (SD_SHARE_CAP_STATES).
> Remove the flag. > > Suggested-by: Morten Rasmussen <morten.rasmussen@arm.com> > Signed-off-by: Valentin Schneider <valentin.schneider@arm.com> > --- > arch/arm/kernel/topology.c | 2 +- > include/linux/sched/sd_flags.h | 20 ++++++-------------- > kernel/sched/topology.c | 10 +++------- > 3 files changed, 10 insertions(+), 22 deletions(-) > > diff --git a/arch/arm/kernel/topology.c b/arch/arm/kernel/topology.c > index b5adaf744630..353f3ee660e4 100644 > --- a/arch/arm/kernel/topology.c > +++ b/arch/arm/kernel/topology.c > @@ -243,7 +243,7 @@ void store_cpu_topology(unsigned int cpuid) > > static inline int cpu_corepower_flags(void) > { > - return SD_SHARE_PKG_RESOURCES | SD_SHARE_POWERDOMAIN; > + return SD_SHARE_PKG_RESOURCES; > } > > static struct sched_domain_topology_level arm_topology[] = {
I guess with SD_SHARE_POWERDOMAIN gone, arch arm can even use the default_topology[]:
diff --git a/arch/arm/kernel/topology.c b/arch/arm/kernel/topology.c index b5adaf744630..87dd193165cc 100644 --- a/arch/arm/kernel/topology.c +++ b/arch/arm/kernel/topology.c @@ -241,20 +241,6 @@ void store_cpu_topology(unsigned int cpuid) update_siblings_masks(cpuid); } -static inline int cpu_corepower_flags(void) -{ - return SD_SHARE_PKG_RESOURCES | SD_SHARE_POWERDOMAIN; -} - -static struct sched_domain_topology_level arm_topology[] = { -#ifdef CONFIG_SCHED_MC - { cpu_corepower_mask, cpu_corepower_flags, SD_INIT_NAME(GMC) }, - { cpu_coregroup_mask, cpu_core_flags, SD_INIT_NAME(MC) }, -#endif - { cpu_cpu_mask, SD_INIT_NAME(DIE) }, - { NULL, }, -}; - /* * init_cpu_topology is called at boot when only one cpu is running * which prevent simultaneous write access to cpu_topology array @@ -265,7 +251,4 @@ void __init init_cpu_topology(void) smp_wmb(); parse_dt_topology(); - - /* Set scheduler topology descriptor */ - set_sched_topology(arm_topology); }
| |