linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: cheuche+lkml@free.fr
To: linux-kernel@vger.kernel.org
Subject: Re: Catching NForce2 lockup with NMI watchdog
Date: Fri, 5 Dec 2003 21:18:12 +0100	[thread overview]
Message-ID: <20031205201812.GA10538@localnet> (raw)
In-Reply-To: <DCB9B7AA2CAB7F418919D7B59EE45BAF49F877@mail-sc-6.nvidia.com>

On Fri, Dec 05, 2003 at 11:11:39AM -0800, Allen Martin wrote:
> 
> Likely the root of the problem has to do with the way the Linux kernel is
> using the ACPI methods to setup the interrupts which is different from win
> 9x/2k/XP.  I can help track this down, unfortunately so far I've been unable
> to reproduce the hangs on any of the boards I have.
> 
With a little patch in arch/i386/kernel/mpparse.c in the acpi section, I
managed to get the timer interrupt back on IO-APIC-edge, maybe the nmi
watchdog could work with the ioapic then ?

With the patch, the interrupt flood on IRQ7 I reported on the nvidia2 
lockups thread also disappeared, but then I noticed something odd when
there is ide activity :
With amd74xx/nforce driver, I can almost instantly hang the machine
(nothing new there), but with the generic ide driver and the IO load a
cat /dev/hda > /dev/null can do, timer interrupts don't seem to get
through easily. I first thought the box freezed but I realized the
software cursor was blinking *very* slowly. In fact 1 second for the
kernel took about 12 seconds. Stopping the IO load on ide and
everything seems back to normal.

There may be something wrong with the timer using apic and the
amd/nforce ide driver does not handle this situation that should not
occur and juste freezes. This is pure speculation of course.

I looked in mpparse.c because this is where I noticed the difference
about the timer interrupt setup with apic between 2.4.22 and 2.4.23.
However it is in the path of ACPI source interrupt override, maybe the
modification I made just overrides the override (sigh).

*Disclaimer*
The modification is certainly not the proper fix, does a wrong thing,
but it shows an interesting behavior, especially it fixed the
interrupt flood on IRQ7 I and some others are able to see.

Here the little patch of arch/i386/kernel/mpparse.c I used :

--- mpparse.c.old       2003-12-05 14:42:10.000000000 +0100
+++ mpparse.c   2003-12-05 14:43:41.000000000 +0100
@@ -962,7 +962,8 @@
	*/
	for (i = 0; i < mp_irq_entries; i++) {
		if ((mp_irqs[i].mpc_dstapic == intsrc.mpc_dstapic)
-			&& (mp_irqs[i].mpc_srcbusirq == intsrc.mpc_srcbusirq)) {
+			&& (mp_irqs[i].mpc_srcbusirq == intsrc.mpc_srcbusirq)
+			&& (mp_irqs[i].mpc_irqtype == intsrc.mpc_irqtype)) {
			mp_irqs[i] = intsrc;
			found = 1;
			break;



I hope this helps,

Mathieu

  reply	other threads:[~2003-12-05 20:18 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-12-05 19:11 Catching NForce2 lockup with NMI watchdog Allen Martin
2003-12-05 20:18 ` cheuche+lkml [this message]
2003-12-05 20:34   ` Prakash K. Cheemplavam
2003-12-05 21:02     ` Mike Fedyk
2003-12-05 20:55   ` Jesse Allen
2003-12-06  3:20   ` Jesse Allen
2003-12-05 20:36 ` Jesse Allen
2003-12-05 22:55 ` Mike Fedyk
2003-12-05 23:11   ` Craig Bradney
  -- strict thread matches above, loose matches on Subject: below --
2003-12-17 18:14 Ross Dickson
2003-12-17 21:41 ` George Anzinger
2003-12-17 21:48 ` George Anzinger
2003-12-18  1:30   ` Ross Dickson
2003-12-18 14:32     ` Maciej W. Rozycki
2003-12-19  4:17       ` Ross Dickson
2003-12-19 15:35         ` Maciej W. Rozycki
2003-12-18 14:04 ` Maciej W. Rozycki
2003-12-18 14:22   ` Craig Bradney
2003-12-19  5:38     ` Ross Dickson
2003-12-19 10:36       ` Craig Bradney
2003-12-19  4:06   ` Ross Dickson
2003-12-19 15:33     ` Maciej W. Rozycki
2003-12-13  3:56 Ross Dickson
2003-12-15 13:16 ` Maciej W. Rozycki
2003-12-07 19:58 Fixes for nforce2 hard lockup, apic, io-apic, udma133 covered Ian Kumlien
2003-12-08  2:07 ` Ross Dickson
2003-12-09 18:12   ` Catching NForce2 lockup with NMI watchdog Ian Kumlien
2003-12-09 22:04     ` Craig Bradney
2003-12-09 23:13       ` Ian Kumlien
2003-12-10  6:14       ` Bob
2003-12-10  7:51         ` Craig Bradney
2003-12-05 22:41 b
2003-12-05 20:56 Allen Martin
2003-12-05  4:54 Jesse Allen
2003-12-05  7:40 ` Mikael Pettersson
2003-12-05  8:33   ` Josh McKinney
2003-12-05 12:14     ` Mikael Pettersson
2003-12-05 14:19       ` Craig Bradney
2003-12-05 17:05         ` Craig Bradney
2003-12-05 18:11         ` Josh McKinney
2003-12-05  8:58   ` Mike Fedyk
2003-12-05 12:06     ` Mikael Pettersson
2003-12-08  2:20     ` Bob
2003-12-09 14:21       ` Maciej W. Rozycki
2003-12-09 16:35         ` Bob
2003-12-10 13:41           ` Maciej W. Rozycki
2003-12-12 16:01             ` bill davidsen
2003-12-12 16:47               ` Maciej W. Rozycki
2003-12-12 16:57                 ` Richard B. Johnson
2003-12-12 17:21                   ` Maciej W. Rozycki
2003-12-13  5:16                 ` Bill Davidsen
2003-12-15 13:23                   ` Maciej W. Rozycki
2003-12-12 22:27               ` George Anzinger
2003-12-15 13:13                 ` Maciej W. Rozycki
2003-12-15 21:42                   ` George Anzinger
2003-12-16 13:37                     ` Maciej W. Rozycki
2003-12-16 13:57                       ` Richard B. Johnson
2003-12-16 15:47                         ` Maciej W. Rozycki
2003-12-16 16:44                           ` Richard B. Johnson
2003-12-16 16:50                             ` Maciej W. Rozycki
2003-12-16 17:26                       ` George Anzinger
2003-12-16 20:54                         ` Maciej W. Rozycki
2003-12-16 21:53                           ` George Anzinger
2003-12-17 14:03                             ` Maciej W. Rozycki

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=20031205201812.GA10538@localnet \
    --to=cheuche+lkml@free.fr \
    --cc=linux-kernel@vger.kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).