diff options
author | Ingo Molnar <mingo@elte.hu> | 2006-07-03 00:24:42 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-07-03 15:27:03 -0700 |
commit | de30a2b355ea85350ca2f58f3b9bf4e5bc007986 (patch) | |
tree | 0bef670aff65614b3c78ca13b20307355b8221d5 /kernel/sched.c | |
parent | 5bdc9b447c0076f494a56fdcd93ee8c5e78a2afd (diff) | |
download | op-kernel-dev-de30a2b355ea85350ca2f58f3b9bf4e5bc007986.zip op-kernel-dev-de30a2b355ea85350ca2f58f3b9bf4e5bc007986.tar.gz |
[PATCH] lockdep: irqtrace subsystem, core
Accurate hard-IRQ-flags and softirq-flags state tracing.
This allows us to attach extra functionality to IRQ flags on/off
events (such as trace-on/off).
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel/sched.c')
-rw-r--r-- | kernel/sched.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index 48c1faa..9118299 100644 --- a/kernel/sched.c +++ b/kernel/sched.c @@ -4462,7 +4462,9 @@ int __sched cond_resched_softirq(void) BUG_ON(!in_softirq()); if (need_resched() && __resched_legal()) { - __local_bh_enable(); + raw_local_irq_disable(); + _local_bh_enable(); + raw_local_irq_enable(); __cond_resched(); local_bh_disable(); return 1; |