From ee0b5a744f89c1a452e1bd4adfd884938971dd2c Mon Sep 17 00:00:00 2001 From: Gregory Haskins Date: Fri, 27 Jun 2008 14:29:55 -0600 Subject: [PATCH] --- yaml --- r: 100247 b: refs/heads/master c: c4acb2c0669c5c5c9b28e9d02a34b5c67edf7092 h: refs/heads/master i: 100245: afe16b13a1f99e7b2973d4dd46c295d5de04b904 100243: e33208e94c2f6491cc6bf79ce720b1757b891df9 100239: cd9515bb7fa1d3f3e5cc495ddb3cbb78fc088096 v: v3 --- [refs] | 2 +- trunk/kernel/sched.c | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index d014966f0217..2cb85d542596 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 30432094a7f506ad24997a3ba6aed913ab61c01d +refs/heads/master: c4acb2c0669c5c5c9b28e9d02a34b5c67edf7092 diff --git a/trunk/kernel/sched.c b/trunk/kernel/sched.c index 677c80b9a6b5..d99aeabeb72f 100644 --- a/trunk/kernel/sched.c +++ b/trunk/kernel/sched.c @@ -3013,6 +3013,10 @@ static int move_tasks(struct rq *this_rq, int this_cpu, struct rq *busiest, max_load_move - total_load_moved, sd, idle, all_pinned, &this_best_prio); class = class->next; + + if (idle == CPU_NEWLY_IDLE && this_rq->nr_running) + break; + } while (class && max_load_move > total_load_moved); return total_load_moved > 0;