From e5eb12acc78dc0b3295e62d84c302c1d2cd84ced Mon Sep 17 00:00:00 2001 From: Dietmar Eggemann Date: Sun, 4 Dec 2016 17:47:53 +0000 Subject: [PATCH] ANDROID: Revert "WIP: sched: Consider spare cpu capacity at task wake-up" This reverts commit 75a9695b619741019363f889c99c97c7bb823797. Change-Id: I846b21f2bdeb0b0ca30ad65683564ed07a429428 Signed-off-by: Dietmar Eggemann [ minor merge changes ] Signed-off-by: Chris Redpath Signed-off-by: Quentin Perret --- kernel/sched/fair.c | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index cba07f2ce3ed..647b2c2e4627 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -5862,10 +5862,9 @@ find_idlest_group(struct sched_domain *sd, struct task_struct *p, int this_cpu, int sd_flag) { struct sched_group *idlest = NULL, *group = sd->groups; - struct sched_group *fit_group = NULL, *spare_group = NULL; + struct sched_group *fit_group = NULL; unsigned long min_load = ULONG_MAX, this_load = 0; unsigned long fit_capacity = ULONG_MAX; - unsigned long max_spare_capacity = capacity_margin - SCHED_CAPACITY_SCALE; int load_idx = sd->forkexec_idx; int imbalance = 100 + (sd->imbalance_pct-100)/2; @@ -5873,7 +5872,7 @@ find_idlest_group(struct sched_domain *sd, struct task_struct *p, load_idx = sd->wake_idx; do { - unsigned long load, avg_load, spare_capacity; + unsigned long load, avg_load; int local_group; int i; @@ -5905,16 +5904,6 @@ find_idlest_group(struct sched_domain *sd, struct task_struct *p, fit_capacity = capacity_of(i); fit_group = group; } - - /* - * Look for group which has most spare capacity on a - * single cpu. - */ - spare_capacity = capacity_of(i) - cpu_util(i); - if (spare_capacity > max_spare_capacity) { - max_spare_capacity = spare_capacity; - spare_group = group; - } } /* Adjust by relative CPU capacity of the group */ @@ -5931,9 +5920,6 @@ find_idlest_group(struct sched_domain *sd, struct task_struct *p, if (fit_group) return fit_group; - if (spare_group) - return spare_group; - if (!idlest || 100*this_load < imbalance*min_load) return NULL; return idlest;