public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andi Kleen <ak@suse.de>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: Arjan van de Ven <arjan@infradead.org>,
	David Bahi <dbahi@novell.com>,
	LKML <linux-kernel@vger.kernel.org>,
	linux-rt-users@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	Ingo Molnar <mingo@elte.hu>,
	Gregory Haskins <GHaskins@novell.com>
Subject: Re: nmi_watchdog fix for x86_64 to be more like i386
Date: Tue, 2 Oct 2007 07:51:42 +0200	[thread overview]
Message-ID: <200710020751.42994.ak@suse.de> (raw)
In-Reply-To: <alpine.LFD.0.9999.0710020043450.20478@localhost.localdomain>


> Agreed.
> 
> I just got a x8664-hrt report, where I found the following oddity:
> 
>  0:       1197     172881   IO-APIC-edge      timer
> 
> That's one of those infamous AMD C1E boxen. Strange, all my systems have 
> IRQ#0 on CPU#0 and nowhere else. Any idea ?

Hmm, in lowestpriority mode it would be possible that the APIC changes
the CPU to #1 once; but IRQ 0 is always set to fixed mode. Also even 
if that happens you should have them all on 1.

Maybe the chipset is just ignoring the IO-APIC configuration in this case?

Is it always the same chipset? Is it seen on i386 too?

The problem is really that if this happens it's more than the NMI watchdog
that is broken. If you don't run an additional APIC timer interrupt on CPU #0
it's possible that CPU #0 won't schedule at all.

The only workaround for chipsets ignoring IRQ affinity would be to keep
track on which CPU irq 0 happens and then restart APIC timer interrupts
on the others (or send IPIs) as needed. But that would be fairly ugly.

IRQ 0 is unfortunately an generally under-validated area because Windows doesn't
use it.

-Andi


  parent reply	other threads:[~2007-10-02  5:51 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-26 18:03 nmi_watchdog fix for x86_64 to be more like i386 David Bahi
2007-10-01 17:36 ` Andi Kleen
2007-10-01 18:54   ` Thomas Gleixner
2007-10-01 19:16     ` Andi Kleen
2007-10-01 19:27       ` Thomas Gleixner
2007-10-01 19:56         ` Arjan van de Ven
2007-10-01 20:10           ` Dave Jones
2007-10-01 20:11           ` Paul E. McKenney
2007-10-01 21:17           ` Thomas Gleixner
2007-10-01 21:41             ` Andi Kleen
2007-10-01 21:58               ` Thomas Gleixner
2007-10-01 22:07                 ` Andi Kleen
2007-10-01 22:47                   ` Thomas Gleixner
2007-10-01 22:52                     ` Arjan van de Ven
2007-10-02  4:56                     ` Mika Penttilä
2007-10-02  5:00                       ` Arjan van de Ven
2007-10-02  5:51                     ` Andi Kleen [this message]
2007-10-02  6:18                       ` Thomas Gleixner
2007-10-05  4:37                         ` Pallipadi, Venkatesh
2007-10-05 20:37                           ` Thomas Gleixner
  -- strict thread matches above, loose matches on Subject: below --
2007-10-05 16:01 David Bahi
2007-10-05 16:03 ` Andi Kleen
2007-10-05 17:38   ` Peter W. Morreale
2007-10-05 18:00     ` Andi Kleen

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=200710020751.42994.ak@suse.de \
    --to=ak@suse.de \
    --cc=GHaskins@novell.com \
    --cc=akpm@linux-foundation.org \
    --cc=arjan@infradead.org \
    --cc=dbahi@novell.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rt-users@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox