man pages section 9: DDI and DKI Kernel Functions

Exit Print View

Updated: July 2014



ddi_in_panic - determine if system is in panic state


#include <sys/ddi.h>
#include <sys/sunddi.h>

int ddi_in_panic(void);

Interface Level

Solaris DDI specific (Solaris DDI).


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.

Return Values

ddi_in_panic() returns 1 if the system is in panic, or 0 otherwise.


ddi_in_panic() may be called from any context.

See also

dump(9E), delay(9F), ddi_trigger_softintr(9F), timeout(9F)

Writing Device Drivers for Oracle Solaris 11.2