Freebsd 6.0 doesnt detect local APIC on a Pentium 3 machine
John Baldwin
jhb at FreeBSD.org
Sun Nov 6 07:40:33 PST 2005
On Sunday 06 November 2005 07:06 am, Vaibhave Agarwal wrote:
> hi,
>
> FreeBSD 6.0 always uses local APIC for the clock.
>
> But on my Pentium 3, 850 MHz machine, it doesnt detect local APIC and
> falls back to using the motherboard clock for the clock interrupts.
>
> I figured this out by printing the value of
> "using_lapic_timer" variable in the sys/i386/isa/clock.c file,
> which is always 0.
>
> But when I use Intel's 3GHz - 64 bit Xeon processor, it detects local APIC
> and all works fine.
>
> Can someone please tell me the reason, why local APIC doesnt work for the
> Pentium 3 machines ? Or is there a way to fix this ?
We don't detect the local APIC via MSR's or the APIC bit in cpu_features, but
rely on a working MP Table or MADT table to setup both the local APIC(s) and
I/O APIC(s). Does your machine have a valid MP Table or an APIC table in its
acpidump? Many UP machine BIOSes don't include those tables.
--
John Baldwin <jhb at FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve" = http://www.FreeBSD.org
More information about the freebsd-net
mailing list