aboutsummaryrefslogtreecommitdiffstats
path: root/arch/i386/kernel/nmi.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/i386/kernel/nmi.c')
-rw-r--r--arch/i386/kernel/nmi.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/arch/i386/kernel/nmi.c b/arch/i386/kernel/nmi.c
index 8c242bb1ef45..0178457db721 100644
--- a/arch/i386/kernel/nmi.c
+++ b/arch/i386/kernel/nmi.c
@@ -478,6 +478,11 @@ void touch_nmi_watchdog (void)
478 */ 478 */
479 for (i = 0; i < NR_CPUS; i++) 479 for (i = 0; i < NR_CPUS; i++)
480 alert_counter[i] = 0; 480 alert_counter[i] = 0;
481
482 /*
483 * Tickle the softlockup detector too:
484 */
485 touch_softlockup_watchdog();
481} 486}
482 487
483extern void die_nmi(struct pt_regs *, const char *msg); 488extern void die_nmi(struct pt_regs *, const char *msg);
@@ -501,8 +506,11 @@ void nmi_watchdog_tick (struct pt_regs * regs)
501 */ 506 */
502 alert_counter[cpu]++; 507 alert_counter[cpu]++;
503 if (alert_counter[cpu] == 5*nmi_hz) 508 if (alert_counter[cpu] == 5*nmi_hz)
509 /*
510 * die_nmi will return ONLY if NOTIFY_STOP happens..
511 */
504 die_nmi(regs, "NMI Watchdog detected LOCKUP"); 512 die_nmi(regs, "NMI Watchdog detected LOCKUP");
505 } else { 513
506 last_irq_sums[cpu] = sum; 514 last_irq_sums[cpu] = sum;
507 alert_counter[cpu] = 0; 515 alert_counter[cpu] = 0;
508 } 516 }