lkml.org 
[lkml]   [2018]   [May]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] Revert "cpufreq: schedutil: Don't restrict kthread to related_cpus unnecessarily"
From
Date
On 05/08/2018 10:22 AM, Viresh Kumar wrote:
> On 08-05-18, 08:33, Dietmar Eggemann wrote:
>> This reverts commit e2cabe48c20efb174ce0c01190f8b9c5f3ea1d13.
>>
>> Lifting the restriction that the sugov kthread is bound to the
>> policy->related_cpus for a system with a slow switching cpufreq driver,
>> which is able to perform DVFS from any cpu (e.g. cpufreq-dt), is not
>> only not beneficial it also harms Enery-Aware Scheduling (EAS) on
>> systems with asymmetric cpu capacities (e.g. Arm big.LITTLE).
>>
>> The sugov kthread which does the update for the little cpus could
>> potentially run on a big cpu. It could prevent that the big cluster goes
>> into deeper idle states although all the tasks are running on the little
>> cluster.
>
> I think the original patch did the right thing, but that doesn't suit
> everybody as you explained.
>
> I wouldn't really revert the patch but fix my platform's cpufreq
> driver to set dvfs_possible_from_any_cpu = false, so that other
> platforms can still benefit from the original commit.

This would make sure that the kthreads are bound to the correct set of
cpus for platforms with those cpufreq drivers (cpufreq-dt (h960),
scmi-cpufreq, scpi-cpufreq) but it will also change the logic (e.g.
sugov_should_update_freq() -> cpufreq_can_do_remote_dvfs()).

I'm still struggling to understand when a driver/platform should set
dvfs_possible_from_any_cpu to true and what the actual benefit would be.

\
 
 \ /
  Last update: 2018-05-08 11:10    [W:0.105 / U:0.048 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site