| __wake_up_sync_key(9) - phpMan
__WAKE_UP_SYNC_KEY(9) Driver Basics __WAKE_UP_SYNC_KEY(9)
NAME
__wake_up_sync_key - wake up threads blocked on a waitqueue.
SYNOPSIS
void __wake_up_sync_key(wait_queue_head_t * q, unsigned int mode, int nr_exclusive,
void * key);
ARGUMENTS
q
the waitqueue
mode
which threads
nr_exclusive
how many wake-one or wake-many threads to wake up
key
opaque value to be passed to wakeup targets
DESCRIPTION
The sync wakeup differs that the waker knows that it will schedule away soon, so while the
target thread will be woken up, it will not be migrated to another CPU - ie. the two
threads are 'synchronized' with each other. This can prevent needless bouncing between
CPUs.
On UP it can prevent extra preemption.
It may be assumed that this function implies a write memory barrier before changing the
task state if and only if any tasks are woken up.
COPYRIGHT
Kernel Hackers Manual 4.8. January 2017 __WAKE_UP_SYNC_KEY(9)
|