Frequency invariant load is currently calculated relative to policy->max
i.e :
freq_invariant_util = util * (policy->cur / policy->max);
Which means that when selecting a frequency, schedutil should also try to
calculate the new target frequency relative to policy->max and not
cpuinfo_max_freq.
Bug
1877558
Bug
200222325
Change-Id: Ice66f1fa52b23a4c1a3837b8f320c3d40acf6c15
Signed-off-by: Sai Gurrappadi <sgurrappadi@nvidia.com>
Reviewed-on: http://git-master/r/
1458136
GVS: Gerrit_Virtual_Submit
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
unsigned long util, unsigned long max)
{
unsigned int freq = arch_scale_freq_invariant() ?
- policy->cpuinfo.max_freq : policy->cur;
+ policy->max : policy->cur;
return (freq + (freq >> 2)) * util / max;
}