ddi_can_receive_sig(9F) Kernel Functions for Drivers ddi_can_receive_sig(9F)NAMEddi_can_receive_sig - Test for ability to receive signals
SYNOPSIS
#include <sys/ddi.h>
#include <sys/sunddi.h>
boolean_t ddi_can_receive_sig(void);
INTERFACE LEVEL
Solaris DDI specific (Solaris DDI).
PARAMETERS
None.
DESCRIPTION
The ddi_can_receive_sig() function returns a boolean value indi‐
cating whether the current thread can receive signals sent by kill(2).
If the return value is B_FALSE, then the calling thread cannot
receive signals, and any call to qwait_sig(9F), cv_wait_sig(9F), or
cv_timedwait_sig(9F) implicitly becomes qwait(9F), cv_wait(9F), or
cv_timedwait(9F), respectively. Drivers that can block indefinitely
awaiting an event should use this function to determine if additional
means (such as timeout(9F)) may be necessary to avoid creating unkill‐
able threads.
RETURN VALUES
B_FALSE The calling thread is in a state in which sig‐
nals cannot be received. For exam‐
ple, the thread is not associated with a user
process or is in the midst of exit(2) handling.
B_TRUE The calling thread may receive a signal while
blocked on a condition variable.
Note that this function does not check to
determine whether signals are blocked (see sig‐
procmask(2)).
CONTEXT
The ddi_can_receive_sig() function may be called from user, kernel, or
interrupt context.
SEE ALSOclose(9E), cv_wait(9F), qwait(9F)SunOS 5.10 15 Dec 2003 ddi_can_receive_sig(9F)