[PATCH 3/6] arm: wire frequency-invariant accounting support up to the task scheduler
From: vincent.guittot@linaro.org (Vincent Guittot)
Date: 2017-06-12 14:31:15
Also in:
linux-pm, lkml
On 8 June 2017 at 09:55, Dietmar Eggemann [off-list ref] wrote:
Commit dfbca41f3479 ("sched: Optimize freq invariant accounting")
changed the wiring which now has to be done by associating
arch_scale_freq_capacity with the actual implementation provided
by the architecture.
Define arch_scale_freq_capacity to use the arch_topology "driver"
function topology_get_freq_scale() for the task scheduler's
frequency-invariant accounting instead of the default
arch_scale_freq_capacity() in kernel/sched/sched.h.
Cc: Russell King <redacted>
Cc: Juri Lelli <redacted>
Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>Acked-by: Vincent Guittot <vincent.guittot@linaro.org>
quoted hunk ↗ jump to hunk
--- arch/arm/include/asm/topology.h | 5 +++++ arch/arm/kernel/topology.c | 1 - 2 files changed, 5 insertions(+), 1 deletion(-)diff --git a/arch/arm/include/asm/topology.h b/arch/arm/include/asm/topology.h index 370f7a732900..a56a9e24f4c0 100644 --- a/arch/arm/include/asm/topology.h +++ b/arch/arm/include/asm/topology.h@@ -24,6 +24,11 @@ void init_cpu_topology(void); void store_cpu_topology(unsigned int cpuid); const struct cpumask *cpu_coregroup_mask(int cpu); +#include <linux/arch_topology.h> + +/* Replace task scheduler's default frequency-invariant accounting */ +#define arch_scale_freq_capacity topology_get_freq_scale + #else static inline void init_cpu_topology(void) { }diff --git a/arch/arm/kernel/topology.c b/arch/arm/kernel/topology.c index bf949a763dbe..2c47a76c67b0 100644 --- a/arch/arm/kernel/topology.c +++ b/arch/arm/kernel/topology.c@@ -11,7 +11,6 @@ * for more details. */ -#include <linux/arch_topology.h> #include <linux/cpu.h> #include <linux/cpufreq.h> #include <linux/cpumask.h> --2.11.0