lkml.org 
[lkml]   [2008]   [Mar]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] documentation: nmi_watchdog=2 works on x86_64 (was: 2.6.25-rc: complete lockup on boot/start of X (bisected))
On Sun, Mar 23, 2008 at 08:06:08PM +0100, Peter Zijlstra wrote:
> On Sun, 2008-03-23 at 19:46 +0100, Marcin Slusarz wrote:
>
> > 4 different lockups:
> > http://alan.umcs.lublin.pl/~mslusarz/kernel/2008.03.23-lockup/
>
> Brilliant, these are extremely helpful.
>
> What seems to happen is a classic xtime deadlock, doing a xtime
> seq_readlock while holding a seq_writelock.
>
> Only need to figure out _why_ that is happening....
>
> > Are there any downsides of using nmi_watchdog=2 all the time?
>
> Some machines are said to not boot due to NMIs, hence the default is
> off, but afaik, _if_ it works there are no downsides aside from the
> slight NMI handling overhead.
>
> > ps: Documentation/nmi_watchdog.txt says: "Currently, local APIC mode
> > (nmi_watchdog=2) does not work on x86-64.". It's not true, so maybe someone
> > should update this file?
>
> Care to send a patch to the x86 maintainers? :-)
>

---
documentation: nmi_watchdog=2 works on x86_64

Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
---
Documentation/nmi_watchdog.txt | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)

diff --git a/Documentation/nmi_watchdog.txt b/Documentation/nmi_watchdog.txt
index c025a45..757c729 100644
--- a/Documentation/nmi_watchdog.txt
+++ b/Documentation/nmi_watchdog.txt
@@ -23,8 +23,7 @@ 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.
+always enabled with I/O-APIC mode (nmi_watchdog=1).

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
--
1.5.3.7


\
 
 \ /
  Last update: 2008-03-23 21:09    [W:0.056 / U:0.564 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site