sched: Sanitize fork() handling
commitf70cad0fdf30b751216b9ce73d6df3f8aaa3c0fe
authorPeter Zijlstra <a.p.zijlstra@chello.nl>
Fri, 27 Nov 2009 16:32:46 +0000 (27 17:32 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 20 Sep 2010 20:17:59 +0000 (20 13:17 -0700)
tree9659ac466d01340ad461772a8a4d3b71d25caa95
parent7b8a5273c87b4229bb83bbb1282424e2af0af214
sched: Sanitize fork() handling

commit cd29fe6f2637cc2ccbda5ac65f5332d6bf5fa3c6 upstream

Currently we try to do task placement in wake_up_new_task() after we do
the load-balance pass in sched_fork(). This yields complicated semantics
in that we have to deal with tasks on different RQs and the
set_task_cpu() calls in copy_process() and sched_fork()

Rename ->task_new() to ->task_fork() and call it from sched_fork()
before the balancing, this gives the policy a clear point to place the
task.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <new-submission>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
include/linux/sched.h
kernel/sched.c
kernel/sched_fair.c