- determine if system is in panic state
#include <sys/ddi.h> #include <sys/sunddi.h> int ddi_in_panic(void);
Drivers controlling devices on which the system may write a kernel crash dump in the event of a panic can call ddi_in_panic() to determine if the system is panicking.
When the system is panicking, the calls of functions scheduled by timeout(9F) and ddi_trigger_softintr(9F) will never occur. Neither can delay(9F) be relied upon, since it is implemented via timeout(9F).
Drivers that need to enforce a time delay such as SCSI bus reset delay time must busy-wait when the system is panicking.
ddi_in_panic() returns 1 if the system is in panic, or 0 otherwise.
ddi_in_panic() may be called from any context.