Date: Sat, 30 Apr 2005 20:01:00 +0000 (UTC) From: Doug White <dwhite@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/amd64/amd64 mp_machdep.c trap.c src/sys/amd64/conf NOTES src/sys/amd64/include smp.h src/sys/conf options.amd64 options.i386 src/sys/i386/conf NOTES... Message-ID: <200504302001.j3UK10XF086196@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
dwhite 2005-04-30 20:01:00 UTC
FreeBSD src repository
Modified files:
sys/amd64/amd64 mp_machdep.c trap.c
sys/amd64/conf NOTES
sys/amd64/include smp.h
sys/conf options.amd64 options.i386
sys/i386/conf NOTES
sys/i386/i386 mp_machdep.c trap.c
sys/i386/include smp.h
sys/kern subr_kdb.c subr_smp.c
sys/sys smp.h
Log:
Implement an alternate method to stop CPUs when entering DDB. Normally we use
a regular IPI vector, but this vector is blocked when interrupts are disabled.
With "options KDB_STOP_NMI" and debug.kdb.stop_cpus_with_nmi set, KDB will
send an NMI to each CPU instead. The code also has a context-stuffing
feature which helps ddb extract the state of processes running on the
stopped CPUs.
KDB_STOP_NMI is only useful with SMP and complains if SMP is not defined.
This feature only applies to i386 and amd64 at the moment, but could be
used on other architectures with the appropriate MD bits.
Submitted by: ups
Revision Changes Path
1.253 +74 -0 src/sys/amd64/amd64/mp_machdep.c
1.284 +8 -0 src/sys/amd64/amd64/trap.c
1.34 +6 -0 src/sys/amd64/conf/NOTES
1.84 +5 -0 src/sys/amd64/include/smp.h
1.20 +3 -0 src/sys/conf/options.amd64
1.220 +3 -0 src/sys/conf/options.i386
1.1198 +5 -0 src/sys/i386/conf/NOTES
1.247 +74 -0 src/sys/i386/i386/mp_machdep.c
1.273 +8 -0 src/sys/i386/i386/trap.c
1.82 +5 -0 src/sys/i386/include/smp.h
1.11 +50 -0 src/sys/kern/subr_kdb.c
1.195 +29 -0 src/sys/kern/subr_smp.c
1.84 +4 -0 src/sys/sys/smp.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200504302001.j3UK10XF086196>
