This patch adds support for multiprocessor kernel debugging, documented in /sys/doc/acidmach.ms. Other sundry changes include: Each kernel has been updated to emit the full path on panic. This behavior can be changed by using the *nodumppath configuration option. This greatly reduces time spent debugging via ktrace. Support for *nodumpstack was extended to other kernels as well. libmach was updated to support stack generation past interrupt frames on i386. A number of small issues existed in the panic code path, which could lead to deadlock after an rdb session. These were corrected for each kernel and included minor cleanup of shutdown behavior in the event of panic. NMI handling for i386 was also reworked to support immediate debugging. Vestigal NMI setup was also removed in favor of the new interface.