Changeset View
Changeset View
Standalone View
Standalone View
sys/kern/subr_bus.c
Show First 20 Lines • Show All 668 Lines • ▼ Show 20 Lines | devctl_queue(struct dev_event_info *dei) | ||||
cv_broadcast(&devsoftc.cv); | cv_broadcast(&devsoftc.cv); | ||||
KNOTE_LOCKED(&devsoftc.sel.si_note, 0); | KNOTE_LOCKED(&devsoftc.sel.si_note, 0); | ||||
mtx_unlock(&devsoftc.mtx); | mtx_unlock(&devsoftc.mtx); | ||||
selwakeup(&devsoftc.sel); | selwakeup(&devsoftc.sel); | ||||
if (devsoftc.async && devsoftc.sigio != NULL) | if (devsoftc.async && devsoftc.sigio != NULL) | ||||
pgsigio(&devsoftc.sigio, SIGIO, 0); | pgsigio(&devsoftc.sigio, SIGIO, 0); | ||||
} | } | ||||
bool | |||||
devctl_queue_empty(void) | |||||
{ | |||||
bool retval; | |||||
mtx_lock(&devsoftc.mtx); | |||||
retval = STAILQ_EMPTY(&devsoftc.devq); | |||||
mtx_unlock(&devsoftc.mtx); | |||||
return (retval); | |||||
} | |||||
/** | /** | ||||
* @brief Send a 'notification' to userland, using standard ways | * @brief Send a 'notification' to userland, using standard ways | ||||
*/ | */ | ||||
void | void | ||||
devctl_notify(const char *system, const char *subsystem, const char *type, | devctl_notify(const char *system, const char *subsystem, const char *type, | ||||
const char *data) | const char *data) | ||||
{ | { | ||||
struct dev_event_info *dei; | struct dev_event_info *dei; | ||||
▲ Show 20 Lines • Show All 5,628 Lines • Show Last 20 Lines |