Jesse Keating 7a32965
From 542dee6f43067fa0101b53925aadf1d08c997cd4 Mon Sep 17 00:00:00 2001
Jesse Keating 7a32965
From: Kyle McMartin <kyle@phobos.i.jkkm.org>
Jesse Keating 7a32965
Date: Mon, 29 Mar 2010 23:40:27 -0400
Jesse Keating 7a32965
Subject: linux-2.6-debug-nmi-timeout
Jesse Keating 7a32965
Jesse Keating 7a32965
---
Jesse Keating 7a32965
 arch/x86/kernel/apic/nmi.c |    2 +-
Jesse Keating 7a32965
 lib/Kconfig.debug          |    8 ++++++++
Jesse Keating 7a32965
 2 files changed, 9 insertions(+), 1 deletions(-)
Jesse Keating 7a32965
Jesse Keating 7a32965
diff --git a/arch/x86/kernel/apic/nmi.c b/arch/x86/kernel/apic/nmi.c
Jesse Keating 7a32965
index 8aa65ad..ba7d55e 100644
Jesse Keating 7a32965
--- a/arch/x86/kernel/apic/nmi.c
Jesse Keating 7a32965
+++ b/arch/x86/kernel/apic/nmi.c
Jesse Keating 7a32965
@@ -439,7 +439,7 @@ nmi_watchdog_tick(struct pt_regs *regs, unsigned reason)
Jesse Keating 7a32965
 		 * wait a few IRQs (5 seconds) before doing the oops ...
Jesse Keating 7a32965
 		 */
Jesse Keating 7a32965
 		__this_cpu_inc(alert_counter);
Jesse Keating 7a32965
-		if (__this_cpu_read(alert_counter) == 5 * nmi_hz)
Jesse Keating 7a32965
+		if (__this_cpu_read(alert_counter) == CONFIG_DEBUG_NMI_TIMEOUT * nmi_hz)
Jesse Keating 7a32965
 			/*
Jesse Keating 7a32965
 			 * die_nmi will return ONLY if NOTIFY_STOP happens..
Jesse Keating 7a32965
 			 */
Jesse Keating 7a32965
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
Jesse Keating 7a32965
index 1fafb4b..963e78b 100644
Jesse Keating 7a32965
--- a/lib/Kconfig.debug
Jesse Keating 7a32965
+++ b/lib/Kconfig.debug
Jesse Keating 7a32965
@@ -254,6 +254,14 @@ config SCHEDSTATS
Jesse Keating 7a32965
 	  application, you can say N to avoid the very slight overhead
Jesse Keating 7a32965
 	  this adds.
Jesse Keating 7a32965
 
Jesse Keating 7a32965
+config DEBUG_NMI_TIMEOUT
Jesse Keating 7a32965
+	int "Number of seconds before NMI timeout"
Jesse Keating 7a32965
+	depends on X86
Jesse Keating 7a32965
+	default 5
Jesse Keating 7a32965
+	help
Jesse Keating 7a32965
+	  This value is the number of seconds the NMI watchdog will tick
Jesse Keating 7a32965
+	  before it decides the machine has hung.
Jesse Keating 7a32965
+
Jesse Keating 7a32965
 config TIMER_STATS
Jesse Keating 7a32965
 	bool "Collect kernel timers statistics"
Jesse Keating 7a32965
 	depends on DEBUG_KERNEL && PROC_FS
Jesse Keating 7a32965
-- 
Jesse Keating 7a32965
1.7.0.1
Jesse Keating 7a32965