MCPcopy Create free account
hub / github.com/F-Stack/f-stack / wakeup

Function wakeup

freebsd/kern/kern_synch.c:343–356  ·  view source on GitHub ↗

* Make all threads sleeping on the specified identifier runnable. */

Source from the content-addressed store, hash-verified

341 * Make all threads sleeping on the specified identifier runnable.
342 */
343void
344wakeup(const void *ident)
345{
346 int wakeup_swapper;
347
348 sleepq_lock(ident);
349 wakeup_swapper = sleepq_broadcast(ident, SLEEPQ_SLEEP, 0, 0);
350 sleepq_release(ident);
351 if (wakeup_swapper) {
352 KASSERT(ident != &proc0,
353 ("wakeup and wakeup_swapper and proc0"));
354 kick_proc0();
355 }
356}
357
358/*
359 * Make a thread sleeping on the specified identifier runnable.

Callers 15

rms_wunlockFunction · 0.70
fail_point_drainFunction · 0.70
fail_point_setFunction · 0.70
epoch_drain_cbFunction · 0.70
sys_acctFunction · 0.70
umtxq_signal_queueFunction · 0.70
umtxq_signal_threadFunction · 0.70
ether_poll_registerFunction · 0.70
sem_removeFunction · 0.70
kern_semctlFunction · 0.70
sys_semopFunction · 0.70

Calls 4

sleepq_lockFunction · 0.85
sleepq_broadcastFunction · 0.85
sleepq_releaseFunction · 0.85
kick_proc0Function · 0.85

Tested by

no test coverage detected