Expand description
Futex (Fast Userspace Mutex) syscall handlers
Structsยง
- Futex
Bucket ๐ - Futex
Bucket ๐Entry - Futex
Queue ๐ - Futex
Wake ๐OpEncode
Constantsยง
- FUTEX_
BUCKET_ ๐CAPACITY - Max distinct futex addresses per bucket.
- FUTEX_
QUEUE_ ๐BUCKETS - Number of independent hash buckets. Must be a power of two.
- FUTEX_
WAITERS_ ๐CAPACITY - Max concurrent waiters on a single futex address.
Staticsยง
- FUTEX_
QUEUES ๐
Functionsยง
- atomic_
cmpxchg_ ๐u32 - Performs the atomic cmpxchg u32 operation.
- atomic_
fetch_ ๐update_ u32 - Performs the atomic fetch update u32 operation.
- do_
requeue ๐ - Performs the do requeue operation.
- futex_
bucket ๐ - futex_
bucket_ ๐index - get_
queue ๐ - Returns queue.
- lock_
two_ ๐queues - Performs the lock two queues operation.
- lookup_
queue ๐ - read_
u32 ๐ - Reads u32.
- sys_
futex_ cmp_ requeue - SYS_FUTEX_CMP_REQUEUE: Conditional requeue
- sys_
futex_ requeue - SYS_FUTEX_REQUEUE: Requeue waiters from one futex to another
- sys_
futex_ wait - SYS_FUTEX_WAIT: Wait on a futex
- sys_
futex_ wake - SYS_FUTEX_WAKE: Wake waiters on a futex
- sys_
futex_ wake_ op - SYS_FUTEX_WAKE_OP: Wake with atomic operation
- try_
gc_ ๐queue - Removes the queue entry for
addrfrom its bucket if the queue is empty. - wake_
from_ ๐waiters - Performs the wake from waiters operation.