Each processor in a multi-processor system is periodically interrupted for
preempting the current thread for servicing of a watchdog thread during
normal operation. Upon failing to service the watchdog thread over a
grace period, a system watchdog initiates an orderly shutdown and reboot
of the system. In order to prevent spinlocks from causing fake panics, if
the current thread is holding one or more spinlocks when the interrupt
occurs, then preemption is deferred until the thread releases the
spinlocks. For diagnostic purposes, a count is kept of the number of
times that preemption is deferred for each processor during each watchdog
grace period.