mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 02:32:09 -04:00
ANDROID: cpufreq/schedutil: Select frequency using util_avg for RT
Schedutil always requests max frequency whenever a RT task is running. Now that we have a better estimate of the utilization of RT runqueues, it is possible to make a less conservative decision and scale frequency according to the needs of the RT tasks. To do so, protect the RT-go-to-max code with a new sched_feature. The sched_feature is disabled by default, hence favoring energy savings as required in mobile environments. Signed-off-by: Quentin Perret <[email protected]> Change-Id: Ic9f01c8703d4f843addaa0d684012a422fe9f3b8 Git-commit: c74d264106b150fad8949a985514d127c1e117c5 Git-repo: https://android.googlesource.com/kernel/common/ [[email protected]: fix trivial merge conflicts] Signed-off-by: Satya Durga Srinivasu Prabhala <[email protected]>
This commit is contained in:
parent
0dbcf5d8eb
commit
9e864eaf88
2 changed files with 6 additions and 1 deletions
|
|
@ -307,7 +307,7 @@ unsigned long schedutil_cpu_util(int cpu, unsigned long util_cfs,
|
|||
unsigned long dl_util, util, irq;
|
||||
struct rq *rq = cpu_rq(cpu);
|
||||
|
||||
if (!IS_BUILTIN(CONFIG_UCLAMP_TASK) &&
|
||||
if (!IS_BUILTIN(CONFIG_UCLAMP_TASK) && sched_feat(SUGOV_RT_MAX_FREQ) &&
|
||||
type == FREQUENCY_UTIL && rt_rq_is_runnable(&rq->rt)) {
|
||||
return max;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -94,3 +94,8 @@ SCHED_FEAT(UTIL_EST, true)
|
|||
* Fast pre-selection of CPU candidates for EAS.
|
||||
*/
|
||||
SCHED_FEAT(FIND_BEST_TARGET, true)
|
||||
|
||||
/*
|
||||
* Request max frequency from schedutil whenever a RT task is running.
|
||||
*/
|
||||
SCHED_FEAT(SUGOV_RT_MAX_FREQ, false)
|
||||
|
|
|
|||
Loading…
Reference in a new issue