static void g_event_procbody(void *arg) { thread_lock(g_event_td); sched_prio(g_event_td, PRIBIO); thread_unlock(g_event_td); g_run_events(); /* NOTREACHED */ }
static void g_event_procbody(void *arg) { mtx_assert(&Giant, MA_NOTOWNED); thread_lock(g_event_td); sched_prio(g_event_td, PRIBIO); thread_unlock(g_event_td); g_run_events(); /* NOTREACHED */ }
static void g_event_procbody(void) { struct proc *p = g_event_proc; struct thread *tp = FIRST_THREAD_IN_PROC(p); mtx_assert(&Giant, MA_NOTOWNED); thread_lock(tp); sched_prio(tp, PRIBIO); thread_unlock(tp); for(;;) { g_run_events(); tsleep(&g_wait_event, PRIBIO, "-", hz/10); } }