From: Andi Kleen <ak@muc.de>
To: Alistair John Strachan <s0348365@sms.ed.ac.uk>
Cc: linux-kernel@vger.kernel.org
Subject: Re: [2.6.12] x86-64 IO-APIC + timer doesn't work II + PATCH
Date: 19 Jun 2005 01:52:29 +0200
Date: Sun, 19 Jun 2005 01:52:29 +0200 [thread overview]
Message-ID: <20050618235229.GA35248@muc.de> (raw)
In-Reply-To: <200506181452.52921.s0348365@sms.ed.ac.uk>
On Sat, Jun 18, 2005 at 02:52:52PM +0100, Alistair John Strachan wrote:
> Hi,
>
> I upgraded my nForce3 x86-64 desktop from 2.6.12-rc5 to 2.6.12 today and
> something strange started happening. Waay back in 2.6.x I had problems with
> the "noapic" default for nForce boards on x86-64, and so used the "apic"
> kernel boot parameter to force the apic on; this worked successfully for a
> long time with no timer problems.
>
> However, as of 2.6.12 (maybe -rc6, too?) my desktop occasionally fails to boot
> with the message:
>
> "IO-APIC + timer doesn't work! Try using the 'noapic' kernel parameter."
> (arch/x86_64/kernel/io_apic.c)
>
> However, this message is intermittent; it is sometimes possible to boot
> without getting it, and everything works fine. So I took its advice and ran
> with noapic, and everything seems fine now.
>
> However, I just thought I'd let whoever maintains this bit of code know that
> the check isn't a "sure thing": it's not being flagged reliably. Whether this
> is my BIOS or the kernel, I don't know.
It's a bit of a shot into the dark, but could you test if the following
patch helps? The A64 is quite aggressive in reordering instructions and it
might be breaking __delay() and cause it to return early.
If not I would check what a failing case and a working case output for
Calibrating delay loop... 3940.35 BogoMIPS (lpj=1970176)
Does the failing kernel output something different here?
-Andi
diff -u linux-2.6.12/arch/x86_64/lib/delay.c-o linux-2.6.12-rc6-git4-work/arch/x86_64/lib/delay.c
--- linux-2.6.12/arch/x86_64/lib/delay.c-o 2005-06-11 13:04:28.000000000 +0200
+++ linux-2.6.12/arch/x86_64/lib/delay.c 2005-06-19 01:49:09.000000000 +0200
@@ -27,9 +27,9 @@
do
{
rep_nop();
+ sync_core();
rdtscl(now);
- }
- while((now-bclock) < loops);
+ } while((now-bclock) < loops);
}
inline void __const_udelay(unsigned long xloops)
next prev parent reply other threads:[~2005-06-18 23:52 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-06-18 13:52 [2.6.12] x86-64 IO-APIC + timer doesn't work Alistair John Strachan
2005-06-18 19:09 ` Andi Kleen
2005-06-19 0:21 ` Alistair John Strachan
2005-06-19 0:57 ` Alistair John Strachan
2005-06-19 1:33 ` Andi Kleen
2005-06-19 1:03 ` Alistair John Strachan
2005-06-18 23:52 ` Andi Kleen [this message]
2005-06-19 0:23 ` [2.6.12] x86-64 IO-APIC + timer doesn't work II + PATCH Alistair John Strachan
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=20050618235229.GA35248@muc.de \
--to=ak@muc.de \
--cc=linux-kernel@vger.kernel.org \
--cc=s0348365@sms.ed.ac.uk \
/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.