On Monday 23 April 2007 02:51:19 pm Mark Tinguely wrote: > > > John Baldwin <[EMAIL PROTECTED]> 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 _______________________________________________ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[EMAIL PROTECTED]"