Messages in this thread | | | Date | Tue, 15 Mar 2016 22:37:44 +0100 | From | Peter Zijlstra <> | Subject | Re: [PATCH 8/8] sched: prefer cpufreq_scale_freq_capacity |
| |
On Sun, Mar 13, 2016 at 10:22:12PM -0700, Michael Turquette wrote: > +++ b/kernel/sched/sched.h > @@ -1368,7 +1368,21 @@ static inline int hrtick_enabled(struct rq *rq) > #ifdef CONFIG_SMP > extern void sched_avg_update(struct rq *rq); > > -#ifndef arch_scale_freq_capacity
> +#ifdef CONFIG_CPU_FREQ > +#define arch_scale_freq_capacity cpufreq_scale_freq_capacity > +#elif !defined(arch_scale_freq_capacity) > static __always_inline > unsigned long arch_scale_freq_capacity(struct sched_domain *sd, int cpu) > {
This could not allow x86 to use the APERF/MPERF thing, so no, can't be right.
Maybe something like
#ifndef arch_scale_freq_capacity #ifdef CONFIG_CPU_FREQ #define arch_scale_freq_capacity cpufreq_scale_freq_capacity #else static __always_inline unsigned long arch_scale_freq_capacity(..) { return SCHED_CAPACITY_SCALE; } #endif #endif
Which will let the arch override and only falls back to cpufreq if the arch doesn't do anything.
| |