diff options
author | Mandeep Singh Baines <msb@chromium.org> | 2011-05-23 01:10:23 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2011-05-23 05:58:59 -0400 |
commit | 4eec42f392043063d0f019640b4ccc2a45570002 (patch) | |
tree | 32db1c354f9c12d1275093efed8101a2bd5db232 /arch/x86/kernel | |
parent | 586692a5a5fc5740c8a46abc0f2365495c2d7c5f (diff) |
watchdog: Change the default timeout and configure nmi watchdog period based on watchdog_thresh
Before the conversion of the NMI watchdog to perf event, the
watchdog timeout was 5 seconds. Now it is 60 seconds. For my
particular application, netbooks, 5 seconds was a better
timeout. With a short timeout, we catch faults earlier and are
able to send back a panic. With a 60 second timeout, the user is
unlikely to wait and will instead hit the power button, causing
us to lose the panic info.
This change configures the NMI period to watchdog_thresh and
sets the softlockup_thresh to watchdog_thresh * 2. In addition,
watchdog_thresh was reduced to 10 seconds as suggested by Ingo
Molnar.
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Cc: Marcin Slusarz <marcin.slusarz@gmail.com>
Cc: Don Zickus <dzickus@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Link: http://lkml.kernel.org/r/1306127423-3347-4-git-send-email-msb@chromium.org
Signed-off-by: Ingo Molnar <mingo@elte.hu>
LKML-Reference: <20110517071642.GF22305@elte.hu>
Diffstat (limited to 'arch/x86/kernel')
-rw-r--r-- | arch/x86/kernel/apic/hw_nmi.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/kernel/apic/hw_nmi.c b/arch/x86/kernel/apic/hw_nmi.c index 5260fe91bcb6..d5e57db0f7be 100644 --- a/arch/x86/kernel/apic/hw_nmi.c +++ b/arch/x86/kernel/apic/hw_nmi.c | |||
@@ -19,9 +19,9 @@ | |||
19 | #include <linux/delay.h> | 19 | #include <linux/delay.h> |
20 | 20 | ||
21 | #ifdef CONFIG_HARDLOCKUP_DETECTOR | 21 | #ifdef CONFIG_HARDLOCKUP_DETECTOR |
22 | u64 hw_nmi_get_sample_period(void) | 22 | u64 hw_nmi_get_sample_period(int watchdog_thresh) |
23 | { | 23 | { |
24 | return (u64)(cpu_khz) * 1000 * 60; | 24 | return (u64)(cpu_khz) * 1000 * watchdog_thresh; |
25 | } | 25 | } |
26 | #endif | 26 | #endif |
27 | 27 | ||