summaryrefslogtreecommitdiff
path: root/kernel/sched_fair.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2007-10-15 17:00:02 +0200
committerIngo Molnar <mingo@elte.hu>2007-10-15 17:00:02 +0200
commitbb61c210835db95b0e9fb612a316422e7cc675e3 (patch)
tree47415f8860a4e112fb4158c8724ee52786d0c928 /kernel/sched_fair.c
parent44142fac3446d08c08c5d717ec11d50a737e8640 (diff)
downloadlwn-bb61c210835db95b0e9fb612a316422e7cc675e3.tar.gz
lwn-bb61c210835db95b0e9fb612a316422e7cc675e3.zip
sched: resched task in task_new_fair()
to get full child-runs-first semantics make sure the parent is rescheduled. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Mike Galbraith <efault@gmx.de> Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel/sched_fair.c')
-rw-r--r--kernel/sched_fair.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c
index 67c67a87146e..0990b20fdcf5 100644
--- a/kernel/sched_fair.c
+++ b/kernel/sched_fair.c
@@ -1191,6 +1191,7 @@ static void task_new_fair(struct rq *rq, struct task_struct *p)
se->wait_runtime = -(sched_granularity(cfs_rq) / 2);
__enqueue_entity(cfs_rq, se);
+ resched_task(rq->curr);
}
#ifdef CONFIG_FAIR_GROUP_SCHED