Thread (14 messages) 14 messages, 4 authors, 2021-02-25

Re: [PATCH] cpufreq: schedutil: Don't consider freq reduction to busy CPU if need_freq_update is set

From: Viresh Kumar <viresh.kumar@linaro.org>
Date: 2021-02-22 05:31:26
Also in: lkml
Subsystem: cpu frequency scaling framework, scheduler, the rest · Maintainers: "Rafael J. Wysocki", Viresh Kumar, Ingo Molnar, Peter Zijlstra, Juri Lelli, Vincent Guittot, Linus Torvalds

On 19-02-21, 19:45, Yue Hu wrote:
We will set next_f to next_freq(previous freq) if next_f is
reduced for busy CPU. Then the next sugov_update_next_freq() will check
if next_freq matches next_f if need_freq_update is not set.
Obviously, we will do nothing for the case. And The related check to
fast_switch_enabled and raw_spin_{lock,unlock} operations are
unnecessary.
Right, but we will still need sugov_update_next_freq() to have the
same implementation regardless and so I am not sure if we should add
this change:
diff --git a/kernel/sched/cpufreq_schedutil.c b/kernel/sched/cpufreq_schedutil.c
index 41e498b0008a..7289e1adab73 100644
--- a/kernel/sched/cpufreq_schedutil.c
+++ b/kernel/sched/cpufreq_schedutil.c
@@ -362,6 +362,9 @@ static void sugov_update_single_freq(struct update_util_data *hook, u64 time,
         * recently, as the reduction is likely to be premature then.
         */
        if (sugov_cpu_is_busy(sg_cpu) && next_f < sg_policy->next_freq) {
+               if (!sg_policy->need_freq_update)
+                       return;
+
                next_f = sg_policy->next_freq;
 
                /* Restore cached freq as next_freq has changed */

-- 
viresh
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help