IBM / FreeBSD Install problem
John Baldwin
jhb at freebsd.org
Mon Apr 23 19:54:14 UTC 2007
On Monday 23 April 2007 02:51:19 pm Mark Tinguely wrote:
>
> > John Baldwin <jhb at freebsd.org> says:
> >
> > APIC IDs are not programmable (well, they are on I/O APICs, but not
local=20
> > APICs). However, I am working on patches to support all valid APIC IDs
for=
> > =20
> > both mptable and MADT. Bumping up NLAPICS as a temporary workaround
should=
> > =20
> > suffice for now.
> >
> > =2D-=20
> > John Baldwin
>
> IMO, the quick solution also requires that MAX_APICID in
> [amd64/amd64 | i386/i386]/local_apic.c needs to be changed
> because lapic_create() checks if the passed apic_id > MAX_APICID.
>
> Also in [amd64/amd64 | i386/i386]/mp_machdep.c checks in cpu_add()
> if the passed apic_id >= MAXCPU. There are a couple other checks
> in mp_machdep.c before converting to use the cpu_apic_ids[] array.
>
> I was curious, and wrote up a patch file with the potential minor changes
> for -current at http://www.casselton.com/~tinguely/acpicid.patch .
> I saw one more change needed to use on FreeBSD 6.2-RELEASE.
What I have so far is somewhat similar, but goes ahead and allows the full
range of APIC IDs while trying to still honor MAXCPU correctly. I haven't
ported it to i386 yet, nor compiled it yet, much less booted it. :) I hope
to at least get it booted on amd64 today.
--
John Baldwin
More information about the freebsd-hackers
mailing list