All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: george@mvista.com
Cc: Ingo Molnar <mingo@elte.hu>, Thomas Gleixner <tglx@linutronix.de>,
	john stultz <johnstul@us.ibm.com>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: 2.6.14-rc5-rt6  -- False NMI lockup detects
Date: Wed, 26 Oct 2005 07:27:26 -0400	[thread overview]
Message-ID: <1130326046.21118.65.camel@localhost.localdomain> (raw)
In-Reply-To: <435E8EDE.30306@mvista.com>

On Tue, 2005-10-25 at 13:00 -0700, George Anzinger wrote:
> Steven Rostedt wrote:
> > On Tue, 2005-10-25 at 16:28 +0200, Ingo Molnar wrote:
> > 
> >>* Steven Rostedt <rostedt@goodmis.org> wrote:
> >>
> >>
> >>>Hi Ingo and Thomas,
> >>>
> >>>On some of my machines, I've been experiencing false NMI lockups.  
> >>>This usually happens on slower machines, and taking a look into this, 
> >>>it seems to be due to a short time where no processes are using 
> >>>timers, and the ktimer interrupts aren't needed. So the APIC timer, 
> >>>which now is used only for the ktimers, has a five second pause, and 
> >>>causes the NMI to go off.  The NMI uses the apic timer to determine 
> >>>lockups.
> >>
> >>this would be a bug - the jiffy tick should be processed every 1 msec, 
> >>regardless of whether there are any ktimers pending. (in the future we 
> >>want to use a special ktimer for the jiffy tick, but that's not 
> >>implemented yet.)
> >>
> > 
> > 
> > Isn't the jiffy tick implemented with the PIT when possible? So the apic
> > is only used when a timer is needed.  Also note that this "lockup"
> > happens on boot up while things are being initialized, so not many
> > things may be using the timer.
> 
> Somewhere in the not too distant past the NMI watchdog was moved from the PIT tick to the APIC 
> timer.  Might want to move it back, at least for now...

Ingo,

So what's the fix here?  The PIT is used for jiffies and the NMI lockup
uses the apic timer to test against.  So if there isn't a ktimer that
goes off for 5 seconds (usually on slower machines), you get a false
positive for a lockup.  Is this really a bug that the apic doesn't go
off for 5 seconds?

So, do we move the NMI detect back to the PIT, or use a more generic
solution that I supplied?  I actually prefer my generic solution because
1. we don't need to worry about which timers we are using at the moment.
2. Like you said, it can be used later on with things like dynamic
ticks, or tickless solutions.

-- Steve



  parent reply	other threads:[~2005-10-26 11:27 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-10-25 14:23 2.6.14-rc5-rt6 -- False NMI lockup detects Steven Rostedt
2005-10-25 14:28 ` Ingo Molnar
2005-10-25 19:24   ` Steven Rostedt
2005-10-25 19:40     ` Thomas Gleixner
2005-10-25 20:00     ` George Anzinger
2005-10-25 20:10       ` Steven Rostedt
2005-10-26 11:27       ` Steven Rostedt [this message]
2005-11-01 11:33 ` Ingo Molnar
2005-11-01 17:41   ` Steven Rostedt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1130326046.21118.65.camel@localhost.localdomain \
    --to=rostedt@goodmis.org \
    --cc=george@mvista.com \
    --cc=johnstul@us.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.