Changeset View
Changeset View
Standalone View
Standalone View
sys/kern/kern_poll.c
Show First 20 Lines • Show All 270 Lines • ▼ Show 20 Lines | |||||
static void | static void | ||||
init_device_poll(void) | init_device_poll(void) | ||||
{ | { | ||||
mtx_init(&poll_mtx, "polling", NULL, MTX_DEF); | mtx_init(&poll_mtx, "polling", NULL, MTX_DEF); | ||||
EVENTHANDLER_REGISTER(shutdown_post_sync, poll_shutdown, NULL, | EVENTHANDLER_REGISTER(shutdown_post_sync, poll_shutdown, NULL, | ||||
SHUTDOWN_PRI_LAST); | SHUTDOWN_PRI_LAST); | ||||
} | } | ||||
SYSINIT(device_poll, SI_SUB_SOFTINTR, SI_ORDER_MIDDLE, init_device_poll, NULL); | SYSINIT(device_poll, SI_SUB_SOFTINTR, SI_ORDER_MIDDLE, init_device_poll); | ||||
/* | /* | ||||
* Hook from hardclock. Tries to schedule a netisr, but keeps track | * Hook from hardclock. Tries to schedule a netisr, but keeps track | ||||
* of lost ticks due to the previous handler taking too long. | * of lost ticks due to the previous handler taking too long. | ||||
* Normally, this should not happen, because polling handler should | * Normally, this should not happen, because polling handler should | ||||
* run for a short time. However, in some cases (e.g. when there are | * run for a short time. However, in some cases (e.g. when there are | ||||
* changes in link status etc.) the drivers take a very long time | * changes in link status etc.) the drivers take a very long time | ||||
* (even in the order of milliseconds) to reset and reconfigure the | * (even in the order of milliseconds) to reset and reconfigure the | ||||
▲ Show 20 Lines • Show All 297 Lines • Show Last 20 Lines |