sched/cpufreq: make schedutil use WALT signal
If WALT is available and enabled, make schedutil governor use its utilization signal. Change-Id: I92bc37989447a76616e9bcc4e9e8616774fb9925 Signed-off-by: Juri Lelli <juri.lelli@arm.com> [we need to use boosted_cpu_util for schedutil, so make it not static] Signed-off-by: Chris Redpath <chris.redpath@arm.com>
This commit is contained in:
parent
e5da6c11b2
commit
f71d9f01c6
2 changed files with 11 additions and 2 deletions
|
@ -17,6 +17,11 @@
|
|||
#include <trace/events/power.h>
|
||||
|
||||
#include "sched.h"
|
||||
#include "tune.h"
|
||||
|
||||
#ifdef CONFIG_SCHED_WALT
|
||||
unsigned long boosted_cpu_util(int cpu);
|
||||
#endif
|
||||
|
||||
/* Stub out fast switch routines present on mainline to reduce the backport
|
||||
* overhead. */
|
||||
|
@ -173,6 +178,10 @@ static void sugov_get_util(unsigned long *util, unsigned long *max, u64 time)
|
|||
rt = (rt * max_cap) >> SCHED_CAPACITY_SHIFT;
|
||||
|
||||
*util = min(rq->cfs.avg.util_avg + rt, max_cap);
|
||||
#ifdef CONFIG_SCHED_WALT
|
||||
if (!walt_disabled && sysctl_sched_use_walt_cpu_util)
|
||||
*util = boosted_cpu_util(cpu);
|
||||
#endif
|
||||
*max = max_cap;
|
||||
}
|
||||
|
||||
|
|
|
@ -4258,7 +4258,7 @@ static inline void hrtick_update(struct rq *rq)
|
|||
|
||||
#ifdef CONFIG_SMP
|
||||
static bool cpu_overutilized(int cpu);
|
||||
static inline unsigned long boosted_cpu_util(int cpu);
|
||||
unsigned long boosted_cpu_util(int cpu);
|
||||
#else
|
||||
#define boosted_cpu_util(cpu) cpu_util(cpu)
|
||||
#endif
|
||||
|
@ -5478,7 +5478,7 @@ schedtune_task_margin(struct task_struct *task)
|
|||
|
||||
#endif /* CONFIG_SCHED_TUNE */
|
||||
|
||||
static inline unsigned long
|
||||
unsigned long
|
||||
boosted_cpu_util(int cpu)
|
||||
{
|
||||
unsigned long util = cpu_util(cpu);
|
||||
|
|
Loading…
Add table
Reference in a new issue