aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/sched_fair.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2010-12-08 14:15:26 -0500
committerIngo Molnar <mingo@elte.hu>2010-12-08 14:15:29 -0500
commit8e9255e6a2141e050d51bc4d96dbef494a87d653 (patch)
treef190b142830153eaab05555a93c4f71a144ba3d4 /kernel/sched_fair.c
parent5091faa449ee0b7d73bc296a93bca9540fc51d0a (diff)
parent6313e3c21743cc88bb5bd8aa72948ee1e83937b6 (diff)
Merge branch 'linus' into sched/core
Merge reason: we want to queue up dependent cleanup Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/sched_fair.c')
-rw-r--r--kernel/sched_fair.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c
index fdbdb5084c4..c88671718bc 100644
--- a/kernel/sched_fair.c
+++ b/kernel/sched_fair.c
@@ -1903,10 +1903,6 @@ static void pull_task(struct rq *src_rq, struct task_struct *p,
1903 set_task_cpu(p, this_cpu); 1903 set_task_cpu(p, this_cpu);
1904 activate_task(this_rq, p, 0); 1904 activate_task(this_rq, p, 0);
1905 check_preempt_curr(this_rq, p, 0); 1905 check_preempt_curr(this_rq, p, 0);
1906
1907 /* re-arm NEWIDLE balancing when moving tasks */
1908 src_rq->avg_idle = this_rq->avg_idle = 2*sysctl_sched_migration_cost;
1909 this_rq->idle_stamp = 0;
1910} 1906}
1911 1907
1912/* 1908/*
@@ -3408,8 +3404,10 @@ static void idle_balance(int this_cpu, struct rq *this_rq)
3408 interval = msecs_to_jiffies(sd->balance_interval); 3404 interval = msecs_to_jiffies(sd->balance_interval);
3409 if (time_after(next_balance, sd->last_balance + interval)) 3405 if (time_after(next_balance, sd->last_balance + interval))
3410 next_balance = sd->last_balance + interval; 3406 next_balance = sd->last_balance + interval;
3411 if (pulled_task) 3407 if (pulled_task) {
3408 this_rq->idle_stamp = 0;
3412 break; 3409 break;
3410 }
3413 } 3411 }
3414 3412
3415 raw_spin_lock(&this_rq->lock); 3413 raw_spin_lock(&this_rq->lock);