diff options
author | Ingo Molnar <mingo@elte.hu> | 2007-10-15 11:00:11 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2007-10-15 11:00:11 -0400 |
commit | 02e4bac2a5b097e23d757bf2953740b3d51b7976 (patch) | |
tree | 11477c89ecec6ffb557d3b2a9d3fcd70c9bc59e0 /kernel/sched.c | |
parent | b8487b924177385e3932f846f430b73ce8e69bba (diff) |
sched: fix sched_fork()
fix sched_fork(): large latencies at new task creation time because
the ->vruntime was not fixed up cross-CPU, if the parent got migrated
after the child's CPU got set up.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel/sched.c')
-rw-r--r-- | kernel/sched.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index 744bd5050f10..36484da963f9 100644 --- a/kernel/sched.c +++ b/kernel/sched.c | |||
@@ -1657,7 +1657,7 @@ void sched_fork(struct task_struct *p, int clone_flags) | |||
1657 | #ifdef CONFIG_SMP | 1657 | #ifdef CONFIG_SMP |
1658 | cpu = sched_balance_self(cpu, SD_BALANCE_FORK); | 1658 | cpu = sched_balance_self(cpu, SD_BALANCE_FORK); |
1659 | #endif | 1659 | #endif |
1660 | __set_task_cpu(p, cpu); | 1660 | set_task_cpu(p, cpu); |
1661 | 1661 | ||
1662 | /* | 1662 | /* |
1663 | * Make sure we do not leak PI boosting priority to the child: | 1663 | * Make sure we do not leak PI boosting priority to the child: |