sched: fix sync wakeups
authorPeter Zijlstra <a.p.zijlstra@chello.nl>
Mon, 26 Jan 2009 16:56:17 +0000 (17:56 +0100)
committerIngo Molnar <mingo@elte.hu>
Sun, 1 Feb 2009 09:49:06 +0000 (10:49 +0100)
commitd942fb6c7d391baba3dddb566eb735fbf3df8528
tree0340b810c79f873b7aea34298aa22e2ebf740df3
parentf90d4118bacef87894621a3e8aba853fa0c89abc
sched: fix sync wakeups

Pawel Dziekonski reported that the openssl benchmark and his
quantum chemistry application both show slowdowns due to the
scheduler under-parallelizing execution.

The reason are pipe wakeups still doing 'sync' wakeups which
overrides the normal buddy wakeup logic - even if waker and
wakee are loosely coupled.

Fix an inversion of logic in the buddy wakeup code.

Reported-by: Pawel Dziekonski <dzieko@gmail.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/sched.c
kernel/sched_fair.c