summary refs log tree commit diff
path: root/arch/sparc
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2011-06-22 19:47:00 +0200
committerIngo Molnar <mingo@elte.hu>2011-08-29 12:26:57 +0200
commitc259e01a1ec90063042f758e409cd26b2a0963c8 (patch)
treedc5910233294b735fd389e0b0aab79cbb03c70a2 /arch/sparc
parentc6a389f123b9f68d605bb7e0f9b32ec1e3e14132 (diff)
downloadlinux-c259e01a1ec90063042f758e409cd26b2a0963c8.tar.gz
sched: Separate the scheduler entry for preemption
Block-IO and workqueues call into notifier functions from the
scheduler core code with interrupts and preemption disabled. These
calls should be made before entering the scheduler core.

To simplify this, separate the scheduler core code into
__schedule(). __schedule() is directly called from the places which
set PREEMPT_ACTIVE and from schedule(). This allows us to add the work
checks into schedule(), so they are only called when a task voluntary
goes to sleep.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Tejun Heo <tj@kernel.org>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: stable@kernel.org # 2.6.39+
Link: http://lkml.kernel.org/r/20110622174918.813258321@linutronix.de
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/sparc')
0 files changed, 0 insertions, 0 deletions