Date: Sat, 5 Aug 2000 17:04:03 -0700 (PDT) From: Tor Egge <tegge@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/i386/include smp.h src/sys/i386/i386 mp_machdep.c mpapic.c Message-ID: <200008060004.RAA78358@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
tegge 2000/08/05 17:04:03 PDT Modified files: sys/i386/include smp.h sys/i386/i386 mp_machdep.c mpapic.c Log: Be more verbose when changing APIC ID on an IO APIC. Don't allow cpu entries in the MP table to contain APIC IDs out of range. Don't write outside array boundaries if an IO APIC entry in the MP table contains an APIC ID out of range. Assign APIC IDs for all IO APICs according to section 3.6.6 in the Intel MP spec: - If the current APIC ID on an IO APIC doesn't conflict with other IO APICs or CPUs, that APIC ID should be used. The copy of the MP table must be updated if the corresponding APIC ID in the MP table is different. - If the current APIC ID was in conflict with other units, the corresponding APIC ID specified in the MP table is checked for conflict. - If a conflict is still found then fall back to using a new unique ID. The copy of the MP table must be updated. - IDs out of range is considered to be in conflict. During these operations, the IO_TO_ID array cannot be used, since any conflict would have caused information loss. The array is then corrected, since all APIC ID conflicts should have been resolved. PR: 20312, 18919 Revision Changes Path 1.53 +2 -1 src/sys/i386/include/smp.h 1.118 +143 -3 src/sys/i386/i386/mp_machdep.c 1.40 +12 -1 src/sys/i386/i386/mpapic.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200008060004.RAA78358>