summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorKe Wang <ke.wang@spreadtrum.com>2017-11-09 11:30:56 +0800
committerAmit Pundir <amit.pundir@linaro.org>2018-01-22 13:15:43 +0530
commit2cc4764f3f572faea8437f9658db64f5fada10d6 (patch)
tree93eff1ca0c827a367bb94a5fc72753d5cbbb8d9a /kernel
parent56c4ae908c850bbf7b7953f718ae5f3799db16fe (diff)
sched: EAS/WALT: Don't take into account of running task's util
For upmigrating misfit running task case, the currently running task's util has been counted into cpu_util(). Thus currently __cpu_overutilized() which add task's uitl twice is overestimated. Signed-off-by: Ke Wang <ke.wang@spreadtrum.com>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/sched/fair.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index b5ea66e5551c..d9b3ac867956 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -6662,7 +6662,8 @@ static int select_energy_cpu_brute(struct task_struct *p, int prev_cpu, int sync
#ifdef CONFIG_SCHED_WALT
- if (!walt_disabled && sysctl_sched_use_walt_cpu_util)
+ if (!walt_disabled && sysctl_sched_use_walt_cpu_util &&
+ p->state == TASK_WAKING)
delta = task_util(p);
#endif
/* Not enough spare capacity on previous cpu */