[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160315212926.GG6344@twins.programming.kicks-ass.net>
Date: Tue, 15 Mar 2016 22:29:26 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: Michael Turquette <mturquette@...libre.com>
Cc: rjw@...ysocki.net, linux-kernel@...r.kernel.org,
linux-pm@...r.kernel.org, Juri.Lelli@....com,
steve.muckle@...aro.org, morten.rasmussen@....com,
dietmar.eggemann@....com, vincent.guittot@...aro.org,
Michael Turquette <mturquette+renesas@...libre.com>
Subject: Re: [PATCH 6/8] cpufreq/schedutil: sum per-sched class utilization
On Sun, Mar 13, 2016 at 10:22:10PM -0700, Michael Turquette wrote:
> +static unsigned long sugov_sum_total_util(struct sugov_cpu *sg_cpu)
> +{
> + enum sched_class_util sc;
> +
> + /* sum the utilization of all sched classes */
> + sg_cpu->total_util = 0;
> + for (sc = 0; sc < nr_util_types; sc++)
> + sg_cpu->total_util += sg_cpu->util[sc];
> +
> + return sg_cpu->total_util;
> +}
> @@ -153,7 +172,7 @@ static unsigned int sugov_next_freq(struct sugov_policy *sg_policy,
> if ((s64)delta_ns > NSEC_PER_SEC / HZ)
> continue;
>
> - j_util = j_sg_cpu->util;
> + j_util = j_sg_cpu->total_util;
> j_max = j_sg_cpu->max;
> if (j_util > j_max)
> return max_f;
So while not strictly wrong, I think we can do so much better.
Changelog doesn't mention anything useful, like that this is indeed very
rough and what we really should be doing etc..
Powered by blists - more mailing lists