[patch v4 16/18] sched: don't care if the local group has capacity

From: Alex Shi
Date: Wed Jan 23 2013 - 22:09:10 EST


In power aware scheduling, we don't care load weight and
want not to pull tasks just because local group has capacity.
Because the local group maybe no tasks at the time, that is the power
balance hope so.

Signed-off-by: Alex Shi <alex.shi@xxxxxxxxx>
---
kernel/sched/fair.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index a1ccb40..94bd40b 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -4767,8 +4767,12 @@ static inline void update_sd_lb_stats(struct lb_env *env,
* extra check prevents the case where you always pull from the
* heaviest group when it is already under-utilized (possible
* with a large weight task outweighs the tasks on the system).
+ *
+ * In power aware scheduling, we don't care load weight and
+ * want not to pull tasks just because local group has capacity.
*/
- if (prefer_sibling && !local_group && sds->this_has_capacity)
+ if (prefer_sibling && !local_group && sds->this_has_capacity
+ && env->perf_lb)
sgs.group_capacity = min(sgs.group_capacity, 1UL);

if (local_group) {
--
1.7.12

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/