Re: [PATCH 4/4] cpufreq: schedutil: Don't call sugov_get_util() unnecessarily
From: Joel Fernandes <hidden>
Date: 2017-12-19 03:26:26
Also in:
lkml
On Wed, Dec 13, 2017 at 1:53 AM, Viresh Kumar [off-list ref] wrote:
quoted hunk ↗ jump to hunk
sugov_update_shared() may get called to clear the scheduling class flags and we would return immediately in that case. Calling sugov_get_util() in that case isn't going to be of any use then. Move invocation of sugov_get_util() after the clear flag is checked. Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> --- kernel/sched/cpufreq_schedutil.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)diff --git a/kernel/sched/cpufreq_schedutil.c b/kernel/sched/cpufreq_schedutil.c index 7edfdc59ee8f..b69c37c867fe 100644 --- a/kernel/sched/cpufreq_schedutil.c +++ b/kernel/sched/cpufreq_schedutil.c@@ -349,8 +349,6 @@ static void sugov_update_shared(struct update_util_data *hook, u64 time, unsigned long util, max; unsigned int next_f; - sugov_get_util(&util, &max, sg_cpu->cpu); - raw_spin_lock(&sg_policy->update_lock); if (unlikely(flags & SCHED_CPUFREQ_CLEAR)) {@@ -358,6 +356,8 @@ static void sugov_update_shared(struct update_util_data *hook, u64 time, goto unlock; } + sugov_get_util(&util, &max, sg_cpu->cpu); + sg_cpu->util = util;
Reviewed-by: Joel Fernandes <redacted> Thanks, - Joel