cpufreq / sched: ignore SMT when determining max cpu capacity
authorSteve Muckle <steve.muckle@linaro.org>
Fri, 26 Aug 2016 18:40:47 +0000 (11:40 -0700)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 31 Aug 2016 22:32:57 +0000 (00:32 +0200)
commit8314bc83f6a33958a033955e9bdc48e8dd4d5fb0
tree123b8124e4e740e85152bed5602788b06f6a89ad
parent12bde33dbb3eadd60343a8a71c39766073c1d752
cpufreq / sched: ignore SMT when determining max cpu capacity

PELT does not consider SMT when scaling its utilization values via
arch_scale_cpu_capacity(). The value in rq->cpu_capacity_orig does
take SMT into consideration though and therefore may be smaller than
the utilization reported by PELT.

On an Intel i7-3630QM for example rq->cpu_capacity_orig is 589 but
util_avg scales up to 1024. This means that a 50% utilized CPU will show
up in schedutil as ~86% busy.

Fix this by using the same CPU scaling value in schedutil as that which
is used by PELT.

Signed-off-by: Steve Muckle <smuckle@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
kernel/sched/cpufreq_schedutil.c