Messages in this thread Patch in this message | | | Date | Tue, 5 Sep 2023 13:24:55 +0200 | From | Peter Zijlstra <> | Subject | Re: [PATCH 3/4] cpufreq/schedutil: use a fixed reference frequency |
| |
On Fri, Sep 01, 2023 at 03:03:11PM +0200, Vincent Guittot wrote:
> +#ifdef arch_scale_freq_ref > +/** > + * arch_scale_freq_ref_policy - get the reference frequency of a given CPU that > + * has been used to correlate frequency and compute capacity. > + * @cpu: the CPU in question. > + * > + * Return: the reference CPU frequency. > + */ > +static __always_inline > +unsigned long arch_scale_freq_ref_policy(struct cpufreq_policy *policy) > +{ > + return arch_scale_freq_ref(policy->cpu); > +} > +#else > +static __always_inline > +unsigned long arch_scale_freq_ref_policy(struct cpufreq_policy *policy)
double space ^^
> +{ > + if (arch_scale_freq_invariant()) > + return policy->cpuinfo.max_freq; > + > +
superfluous whitespace there.
> + return policy->cur; > +} > +#endif
static __always_inline unsigned long arch_scale_freq_ref_policy(struct cpufreq_policy *policy) { #ifdef arch_scale_freq_ref return arch_scale_freq_ref(policy->cpu); #endif
if (arch_scale_freq_invariant()) return policy->cpuinfo.max_freq;
return policy->cur; }
Would have the lot in a single function and possibly easier to read?
> + > /** > * get_next_freq - Compute a new frequency for a given cpufreq policy. > * @sg_policy: schedutil policy object to compute the new frequency for. > @@ -139,11 +164,11 @@ static void sugov_deferred_update(struct sugov_policy *sg_policy) > static unsigned int get_next_freq(struct sugov_policy *sg_policy, > unsigned long util, unsigned long max) > { > + unsigned int freq; > struct cpufreq_policy *policy = sg_policy->policy; > - unsigned int freq = arch_scale_freq_invariant() ? > - policy->cpuinfo.max_freq : policy->cur;
Leave the variable below per the inverse christmas thing.
> > util = map_util_perf(util); > + freq = arch_scale_freq_ref_policy(policy); > freq = map_util_freq(util, freq, max); > > if (freq == sg_policy->cached_raw_freq && !sg_policy->need_freq_update) > -- > 2.34.1 >
| |