diff options
author | Ingo Molnar <mingo@elte.hu> | 2006-03-24 03:18:41 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-24 07:33:30 -0800 |
commit | 6687a97d4041f996f725902d2990e5de6ef5cbe5 (patch) | |
tree | 6ab982091cde7179d94cf592f9c669fd22d93a23 /kernel/timer.c | |
parent | 6a4d11c2abc57ed7ca42041e5f68ae4f7f640a81 (diff) | |
download | lwn-6687a97d4041f996f725902d2990e5de6ef5cbe5.tar.gz lwn-6687a97d4041f996f725902d2990e5de6ef5cbe5.zip |
[PATCH] timer-irq-driven soft-watchdog, cleanups
Make the softlockup detector purely timer-interrupt driven, removing
softirq-context (timer) dependencies. This means that if the softlockup
watchdog triggers, it has truly observed a longer than 10 seconds
scheduling delay of a SCHED_FIFO prio 99 task.
(the patch also turns off the softlockup detector during the initial bootup
phase and does small style fixes)
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel/timer.c')
-rw-r--r-- | kernel/timer.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/timer.c b/kernel/timer.c index 4427e725ccdd..17d956cebcb9 100644 --- a/kernel/timer.c +++ b/kernel/timer.c @@ -915,6 +915,7 @@ static void run_timer_softirq(struct softirq_action *h) void run_local_timers(void) { raise_softirq(TIMER_SOFTIRQ); + softlockup_tick(); } /* @@ -945,7 +946,6 @@ void do_timer(struct pt_regs *regs) /* prevent loading jiffies before storing new jiffies_64 value. */ barrier(); update_times(); - softlockup_tick(regs); } #ifdef __ARCH_WANT_SYS_ALARM |