From: Mikael Pettersson <mikpe@csd.uu.se>
To: "Maciej W. Rozycki" <macro@linux-mips.org>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>,
"mobil@wodkahexe.de" <mobil@wodkahexe.de>,
linux-kernel@vger.kernel.org
Subject: Re: 2.6.9-rc4 No local APIC present or hardware disabled
Date: Fri, 15 Oct 2004 15:53:29 +0200 [thread overview]
Message-ID: <16751.54873.668167.981073@alkaid.it.uu.se> (raw)
In-Reply-To: <Pine.LNX.4.58L.0410142225160.25607@blysk.ds.pg.gda.pl>
Maciej W. Rozycki writes:
> @@ -667,7 +667,7 @@ static int __init detect_init_APIC (void
> u32 h, l, features;
> extern void get_cpu_vendor(struct cpuinfo_x86*);
>
> - /* Disabled by DMI scan or kernel option? */
> + /* Disabled by kernel option? */
> if (enable_local_apic < 0)
> return -1;
>
DMI scan may still be relevant. Previously we used it to
override the default force-enable policy. Now we may still
need it to force-disable the lapic on systems that boot with
it enabled but malfunction if it's used. (I don't know of
any, but given BIOS history, they aren't impossible.)
So the comment doesn't need to change.
> @@ -681,8 +681,7 @@ static int __init detect_init_APIC (void
> break;
> goto no_apic;
> case X86_VENDOR_INTEL:
> - if (boot_cpu_data.x86 == 6 ||
> - (boot_cpu_data.x86 == 15 && (cpu_has_apic || enable_local_apic > 0)) ||
> + if (boot_cpu_data.x86 == 6 || boot_cpu_data.x86 == 15 ||
> (boot_cpu_data.x86 == 5 && cpu_has_apic))
> break;
> goto no_apic;
Looks Ok
> @@ -692,15 +691,20 @@ static int __init detect_init_APIC (void
>
> if (!cpu_has_apic) {
> /*
> - * Over-ride BIOS and try to enable LAPIC
> - * only if "lapic" specified
> + * Over-ride BIOS and try to enable the local
> + * APIC only if "lapic" specified.
> */
> - if (enable_local_apic != 1)
> - goto no_apic;
> + if (enable_local_apic <= 0) {
> + printk("Not enabling local APIC "
> + "because of frequent BIOS bugs\n");
> + printk("You can enable it with \"lapic\"\n");
> + return -1;
I agree with Alan that accusing the BIOS of being buggy is unwarranted.
The text should just state the obvious:
The local APIC was disabled by the BIOS.
You can enable it with "lapic".
> + }
> /*
> * Some BIOSes disable the local APIC in the
> * APIC_BASE MSR. This can only be done in
> - * software for Intel P6 and AMD K7 (Model > 1).
> + * software for Intel P6, Intel P4 and AMD K7
> + * (Model > 1).
To implicitly include P4 and K8, just change this to:
Intel P6 and later, and AMD K7 (Model > 1) and later
/Mikael
next prev parent reply other threads:[~2004-10-15 13:55 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-10-12 17:54 2.6.9-rc4 No local APIC present or hardware disabled mobil
2004-10-12 16:11 ` Mikael Pettersson
2004-10-12 16:15 ` Prakash K. Cheemplavam
2004-10-13 23:59 ` Maciej W. Rozycki
2004-10-14 10:52 ` Mikael Pettersson
2004-10-14 22:27 ` Maciej W. Rozycki
2004-10-15 12:26 ` Alan Cox
2004-10-15 13:53 ` Mikael Pettersson [this message]
2004-10-24 15:44 ` Maciej W. Rozycki
2004-10-24 15:11 ` Alan Cox
2004-10-25 14:08 ` Mikael Pettersson
2004-10-14 11:59 ` mobil
2004-10-14 21:25 ` 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=16751.54873.668167.981073@alkaid.it.uu.se \
--to=mikpe@csd.uu.se \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=macro@linux-mips.org \
--cc=mobil@wodkahexe.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.