summaryrefslogtreecommitdiffstats
path: root/kernel/time/tick-sched.c
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2007-02-19 19:12:05 +0100
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-02-19 23:18:43 +0100
commitbc5393a6c9c0e70b4b43fb2fb63e3315e9a15c8f (patch)
tree7fe069bfde8bef8381bead946e42036e8a325e5a /kernel/time/tick-sched.c
parent[PATCH] NOHZ: Fix RCU handling (diff)
downloadlinux-bc5393a6c9c0e70b4b43fb2fb63e3315e9a15c8f.tar.xz
linux-bc5393a6c9c0e70b4b43fb2fb63e3315e9a15c8f.zip
[PATCH] NOHZ: Produce debug output instead of a BUG()
The BUG_ON() in tick_nohz_stop_sched_tick() triggers on some boxen. Remove the BUG_ON and print information about the pending softirq to allow better debugging of the problem. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/time/tick-sched.c')
-rw-r--r--kernel/time/tick-sched.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
index 9234e44fc94a..512a4a906467 100644
--- a/kernel/time/tick-sched.c
+++ b/kernel/time/tick-sched.c
@@ -165,7 +165,9 @@ void tick_nohz_stop_sched_tick(void)
goto end;
cpu = smp_processor_id();
- BUG_ON(local_softirq_pending());
+ if (unlikely(local_softirq_pending()))
+ printk(KERN_ERR "NOHZ: local_softirq_pending %02x\n",
+ local_softirq_pending());
now = ktime_get();
/*