From: Ian Kumlien <pomac@vapor.com>
To: ross@datscreative.com.au
Cc: linux-kernel@vger.kernel.org
Subject: Re: Fixes for nforce2 hard lockup, apic, io-apic, udma133 covered
Date: Mon, 08 Dec 2003 03:23:05 +0100 [thread overview]
Message-ID: <1070850185.1992.39.camel@big.pomac.com> (raw)
In-Reply-To: <200312081207.45297.ross@datscreative.com.au>
[-- Attachment #1: Type: text/plain, Size: 3751 bytes --]
On Mon, 2003-12-08 at 03:07, Ross Dickson wrote:
> On Monday 08 December 2003 05:58, you wrote:
> > > There are three parts to this email.
> > > a) apic mods.
> > > Lockups are due to too fast an apic acknowledge of apic timer int.
> > > Apic hard locked up the system - no nmi debug available.
> > > Fixed it by introducing a delay of at least 500ns into
> > > smp_apic_timer_interrupt() just prior to ack_APIC_irq().
> >
> > I find this really odd... It works just fine...
> > As did disabling whats now active ie:
> > 'Halt Disconnect and Stop Grant Disconnect' bit is enabled.
> >
> > So it seems like these are the two most important factors, at least from
> > where i stand. Both enabled me to actually use my machine with IO-APIC.
> > (1, disabling Halt Disconnect and Stop Grand Disconnect bit or 2, Add a
> > delay on the irq ack.)
> > Anyone that has any clues?
>
> I started work on this about 2 weeks ago and have not yet tried the
> "Halt Disconnect patch and Stop Grand Disconnect bit or 2" patch.
> My lockups ceased with just the apic time delay. I agree the delay is
> wasteful but the code branches into other servicing routines which I
> did not want to try to rearrange as yet. Given the infrequent nature
> of the lockup in CPU cycles maybe we can get smarter and read the
> timer register and see if enough time has expired to safely ack it. Is
> the Apic read cycle fast like cache ram (assume as fast as bus
> cycles?) or slow like 8259?
It could be something like cpu-disconnect-while-apic-being-hammered
race... Hell i dunno, i can only see some patterns from my own
experiences.
> After all it counts bus cycles doesn't it. Alternately perhaps there
> is a status bit in the apic somewhere to check against after we ack to
> ensure that it did its job although we would not want to hammer the
> apic with writes it cannot accept? Or maybe it is not too bad for now,
> I note that there is an existing fixed 400ns delay in the IDE command
> routines ide-iops.c ide_execute_command() which we currently tolerate.
A status bit would be preferred since that would fix any races that
might exist. As for ide it would be preferred to have non-static delays
but if it's not possible to solve in another way then, by all means =).
But in this case, this is a specific workaround, and it works without it
if you disable the AMD cooler thing.
> > > b) io-apic mods
> > > So I have fixed it too (tested on both my epox and albatron MOBOs).
> > > Firstly I found 8254 connected directly to pin 0 not pin 2 of io-apic.
> > > I have modified check_timer() in io_apic.c to trial connect pin and
> > > test for it after the existing test for connection to io-apic.
> >
> > Good job, i wonder if it could be more generalized and integrated with
> > the rest of the code (i haven't even checked the rest of the code, but
> > this seemed separated).
> >
> > One thing though, I get a lot more NMI's now than with nmi_watchdog=2...
> > NMI: 85520
> > LOC: 85477
> >
> > I usually had a 3 figure number by now... but.. =)
> I have not tested the nmi against the b) io-apic mods. We may have a
> vector clash? Perhaps the new apic mpparse.c patch lets the existing
> check_timer() routines work properly?
> I have not yet tried it.
I dunno, i have never used a machine with IO-APIC on so i dunno whats
normal. But it grows a lot faster than nmi_watchdog=2.
> > > c) ide driver mods
> >
> > Cool..
> >
> > I applied all patches and it survived my grep test so i think it works.
6h 46 mins tells me that this works.
(peak nonworking uptime is still below 2hours)
--
Ian Kumlien <pomac () vapor ! com> -- http://pomac.netswarm.net
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2003-12-08 2:23 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-12-07 19:58 Ian Kumlien
2003-12-07 20:59 ` Jesse Allen
2003-12-07 20:56 ` Ian Kumlien
2003-12-08 2:07 ` Ross Dickson
2003-12-08 2:23 ` Ian Kumlien [this message]
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 1:20 ` NForce2 and AMD, disconnect Ian Kumlien
2003-12-10 6:14 ` Catching NForce2 lockup with NMI watchdog Bob
2003-12-10 7:51 ` Craig Bradney
[not found] <BF1FE1855350A0479097B3A0D2A80EE0023ED17F@hdsmsx402.hd.intel.com>
2004-02-07 11:46 ` Fixes for nforce2 hard lockup, apic, io-apic, udma133 covered Len Brown
2004-02-07 12:41 ` Maciej W. Rozycki
2004-02-07 15:13 ` Len Brown
2004-02-07 16:24 ` Maciej W. Rozycki
-- strict thread matches above, loose matches on Subject: below --
2003-12-15 13:54 Ross Dickson
2003-12-16 1:40 ` Josh McKinney
2003-12-15 10:57 ross.alexander
2003-12-15 12:49 ` Maciej W. Rozycki
2003-12-13 18:07 Ross Dickson
2003-12-13 20:22 ` Josh McKinney
2003-12-13 21:38 ` Ian Kumlien
2003-12-14 4:50 ` Josh McKinney
2003-12-13 22:28 ` Ian Kumlien
2003-12-13 23:16 ` Ross Dickson
2003-12-13 23:21 ` Ian Kumlien
2003-12-13 23:49 ` Ross Dickson
2003-12-14 4:27 ` Jamie Lokier
2003-12-14 11:24 ` Ross Dickson
2003-12-14 13:11 ` Ross Dickson
2003-12-14 13:44 ` Ian Kumlien
2003-12-14 17:26 ` Jamie Lokier
2003-12-13 23:31 ` Ian Kumlien
2003-12-15 11:41 ` Bob
[not found] <106Zu-1sD-3@gated-at.bofh.it>
[not found] ` <1198P-3v0-1@gated-at.bofh.it>
[not found] ` <11gah-33u-1@gated-at.bofh.it>
[not found] ` <11wIo-4T4-7@gated-at.bofh.it>
[not found] ` <11xuB-6k3-11@gated-at.bofh.it>
[not found] ` <11AC6-3Sf-3@gated-at.bofh.it>
2003-12-11 17:11 ` Lenar Lõhmus
2003-12-11 2:50 Ross Dickson
2003-12-07 13:12 Ross Dickson
2003-12-09 15:20 ` Maciej W. Rozycki
2003-12-10 5:43 ` Ross Dickson
2003-12-10 16:06 ` Maciej W. Rozycki
2003-12-11 6:55 ` Ross Dickson
2003-12-11 11:47 ` Ian Kumlien
2003-12-11 9:12 ` Ross Dickson
2003-12-11 17:52 ` Ian Kumlien
2003-12-11 18:21 ` Jesse Allen
2003-12-12 9:27 ` Bob
2003-12-11 14:58 ` Jesse Allen
2003-12-11 15:20 ` Craig Bradney
2003-12-11 16:05 ` Jesse Allen
2003-12-11 15:15 ` Maciej W. Rozycki
2003-12-11 16:23 ` Josh McKinney
2003-12-11 17:04 ` Maciej W. Rozycki
2003-12-11 17:25 ` Jesse Allen
2003-12-10 3:39 ` Jesse Allen
2003-12-10 9:22 ` Ross Dickson
2003-12-10 10:00 ` Mikael Pettersson
2003-12-10 8:40 ` Ross Dickson
2003-12-11 14:32 ` Jesse Allen
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=1070850185.1992.39.camel@big.pomac.com \
--to=pomac@vapor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=ross@datscreative.com.au \
/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
Powered by JetHome