MP Implementation 2/4: Implement a poor-man's IPI messaging subsystem,
authorMatthew Dillon <dillon@dragonflybsd.org>
Tue, 8 Jul 2003 06:27:28 +0000 (06:27 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Tue, 8 Jul 2003 06:27:28 +0000 (06:27 +0000)
commit96728c0567e3251745aecee122058a4ee59a60a6
treecf7a98675797f3b8fccd440fef342e0a12c73924
parent8a8d5d85f4fb81fc5b1dd42da281ec8c7c569880
MP Implementation 2/4: Implement a poor-man's IPI messaging subsystem,
get both cpus arbitrating the BGL for interrupts, IPIing foreign
cpu LWKT scheduling requests without crashing, and dealing with the cpl.

The APs are in a slightly less degenerate state now, but hardclock and
statclock distribution is broken, only one user process is being scheduled
at a time, and priorities are all messed up.
67 files changed:
sys/cpu/i386/include/db_machdep.h
sys/ddb/db_ps.c
sys/ddb/ddb.h
sys/i386/apic/apic_vector.s
sys/i386/apic/mpapic.c
sys/i386/i386/exception.s
sys/i386/i386/genassym.c
sys/i386/i386/globals.s
sys/i386/i386/locore.s
sys/i386/i386/machdep.c
sys/i386/i386/mp_machdep.c
sys/i386/i386/mpapic.c
sys/i386/i386/mplock.s
sys/i386/i386/swtch.s
sys/i386/i386/trap.c
sys/i386/i386/vm86.c
sys/i386/i386/vm86bios.s
sys/i386/i386/vm_machdep.c
sys/i386/icu/icu_vector.s
sys/i386/include/apic.h
sys/i386/include/db_machdep.h
sys/i386/include/globaldata.h
sys/i386/include/ipl.h
sys/i386/include/lock.h
sys/i386/include/smp.h
sys/i386/include/thread.h
sys/i386/isa/apic_vector.s
sys/i386/isa/icu_vector.s
sys/i386/isa/intr_machdep.c
sys/i386/isa/intr_machdep.h
sys/i386/isa/ipl.s
sys/i386/isa/npx.c
sys/kern/kern_intr.c
sys/kern/lwkt_thread.c
sys/platform/pc32/apic/apic_vector.s
sys/platform/pc32/apic/mpapic.c
sys/platform/pc32/i386/exception.s
sys/platform/pc32/i386/genassym.c
sys/platform/pc32/i386/globals.s
sys/platform/pc32/i386/locore.s
sys/platform/pc32/i386/machdep.c
sys/platform/pc32/i386/mp_machdep.c
sys/platform/pc32/i386/mpapic.c
sys/platform/pc32/i386/mplock.s
sys/platform/pc32/i386/swtch.s
sys/platform/pc32/i386/trap.c
sys/platform/pc32/i386/vm86.c
sys/platform/pc32/i386/vm86bios.s
sys/platform/pc32/i386/vm_machdep.c
sys/platform/pc32/icu/icu_vector.s
sys/platform/pc32/include/apic.h
sys/platform/pc32/include/globaldata.h
sys/platform/pc32/include/ipl.h
sys/platform/pc32/include/lock.h
sys/platform/pc32/include/smp.h
sys/platform/pc32/include/thread.h
sys/platform/pc32/isa/apic_vector.s
sys/platform/pc32/isa/icu_vector.s
sys/platform/pc32/isa/intr_machdep.c
sys/platform/pc32/isa/intr_machdep.h
sys/platform/pc32/isa/ipl.s
sys/platform/pc32/isa/npx.c
sys/platform/vkernel/i386/genassym.c
sys/sys/globaldata.h
sys/sys/interrupt.h
sys/sys/thread.h
sys/sys/thread2.h