Commit d8aceb1c authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] NMI watchdog documentation for x86-64

From: Ville Herva <vherva@niksula.hut.fi>

NMI watchdog is nowadays supported on x86-64, too. The nmi-watchdog.txt
document doesn't mention this. Here is a patch to add a few words on that.
parent 767aa962
Is your ix86 system locking up unpredictably? No keyboard activity, just [NMI watchdog is available for x86 and x86-64 architectures]
Is your system locking up unpredictably? No keyboard activity, just
a frustrating complete hard lockup? Do you want to help us debugging a frustrating complete hard lockup? Do you want to help us debugging
such lockups? If all yes then this document is definitely for you. such lockups? If all yes then this document is definitely for you.
On Intel and similar ix86 type hardware there is a feature that enables On many x86/x86-64 type hardware there is a feature that enables
us to generate 'watchdog NMI interrupts'. (NMI: Non Maskable Interrupt us to generate 'watchdog NMI interrupts'. (NMI: Non Maskable Interrupt
which get executed even if the system is otherwise locked up hard). which get executed even if the system is otherwise locked up hard).
This can be used to debug hard kernel lockups. By executing periodic This can be used to debug hard kernel lockups. By executing periodic
...@@ -20,6 +22,15 @@ CONFIG_X86_UP_IOAPIC is for uniprocessor with an IO-APIC. [Note: certain ...@@ -20,6 +22,15 @@ CONFIG_X86_UP_IOAPIC is for uniprocessor with an IO-APIC. [Note: certain
kernel debugging options, such as Kernel Stack Meter or Kernel Tracer, kernel debugging options, such as Kernel Stack Meter or Kernel Tracer,
may implicitly disable the NMI watchdog.] may implicitly disable the NMI watchdog.]
For x86-64, the needed APIC is always compiled in, and the NMI watchdog is
always enabled with I/O-APIC mode (nmi_watchdog=1). Currently, local APIC
mode (nmi_watchdog=2) does not work on x86-64.
Using local APIC (nmi_watchdog=2) needs the first performance register, so
you can't use it for other purposes (such as high precision performance
profiling.) However, at least oprofile and the perfctr driver disable the
local APIC NMI watchdog automatically.
To actually enable the NMI watchdog, use the 'nmi_watchdog=N' boot To actually enable the NMI watchdog, use the 'nmi_watchdog=N' boot
parameter. Eg. the relevant lilo.conf entry: parameter. Eg. the relevant lilo.conf entry:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment