aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2011-06-22 19:47:00 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2011-10-03 11:40:08 -0700
commitedbb7ce79e62d1028781b58337100108dc41471e (patch)
treeada11412d0cba8bf4a3a900e14429935bee8322a /arch
parent1ed2053563d4d0bf70864a9df53c7a5dce7724e9 (diff)
downloadkernel_samsung_espresso10-edbb7ce79e62d1028781b58337100108dc41471e.zip
kernel_samsung_espresso10-edbb7ce79e62d1028781b58337100108dc41471e.tar.gz
kernel_samsung_espresso10-edbb7ce79e62d1028781b58337100108dc41471e.tar.bz2
sched: Separate the scheduler entry for preemption
commit c259e01a1ec90063042f758e409cd26b2a0963c8 upstream. 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> Link: http://lkml.kernel.org/r/20110622174918.813258321@linutronix.de Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'arch')
0 files changed, 0 insertions, 0 deletions