From: Ville Herva 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. Documentation/nmi_watchdog.txt | 15 +++++++++++++-- 1 files changed, 13 insertions(+), 2 deletions(-) diff -puN Documentation/nmi_watchdog.txt~x86_64-nmi-watchog-doc-update Documentation/nmi_watchdog.txt --- 25/Documentation/nmi_watchdog.txt~x86_64-nmi-watchog-doc-update 2003-08-04 23:14:35.000000000 -0700 +++ 25-akpm/Documentation/nmi_watchdog.txt 2003-08-04 23:14:35.000000000 -0700 @@ -1,9 +1,11 @@ -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 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 which get executed even if the system is otherwise locked up hard). This can be used to debug hard kernel lockups. By executing periodic @@ -20,6 +22,15 @@ CONFIG_X86_UP_IOAPIC is for uniprocessor kernel debugging options, such as Kernel Stack Meter or Kernel Tracer, 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 parameter. Eg. the relevant lilo.conf entry: _