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>