Lines Matching refs:futex

7  *      Glibc independent futex library for testing kernel functionality.
23 #include <linux/futex.h>
51 * futex() - SYS_futex syscall wrapper
52 * @uaddr: address of first futex
53 * @op: futex op code
57 * @uaddr2: address of second futex for some ops\
61 * futex() is used by all the following futex op wrappers. It can also be
70 #define futex(uaddr, op, val, timeout, uaddr2, val3, opflags) \
80 return futex(uaddr, FUTEX_WAIT, val, timeout, NULL, 0, opflags);
90 return futex(uaddr, FUTEX_WAKE, nr_wake, NULL, NULL, 0, opflags);
101 return futex(uaddr, FUTEX_WAIT_BITSET, val, timeout, NULL, bitset,
112 return futex(uaddr, FUTEX_WAKE_BITSET, nr_wake, NULL, NULL, bitset,
124 return futex(uaddr, FUTEX_LOCK_PI, detect, timeout, NULL, 0, opflags);
133 return futex(uaddr, FUTEX_UNLOCK_PI, 0, NULL, NULL, 0, opflags);
143 return futex(uaddr, FUTEX_WAKE_OP, nr_wake, nr_wake2, uaddr2, wake_op,
159 return futex(uaddr, FUTEX_REQUEUE, nr_wake, nr_requeue, uaddr2, 0,
172 return futex(uaddr, FUTEX_CMP_REQUEUE, nr_wake, nr_requeue, uaddr2,
178 * @uaddr: non-PI futex source
179 * @uaddr2: PI futex target
188 return futex(uaddr, FUTEX_WAIT_REQUEUE_PI, val, timeout, uaddr2, 0,
194 * @uaddr: non-PI futex source
195 * @uaddr2: PI futex target
203 return futex(uaddr, FUTEX_CMP_REQUEUE_PI, nr_wake, nr_requeue, uaddr2,
209 * @uaddr: The address of the futex to be modified
210 * @oldval: The expected value of the futex
211 * @newval: The new value to try and assign the futex
216 * Return the old futex value.
225 * futex_dec() - atomic decrement of the futex value
226 * @uaddr: The address of the futex to be modified
228 * Return the new futex value.
237 * futex_inc() - atomic increment of the futex value
238 * @uaddr: the address of the futex to be modified
240 * Return the new futex value.
249 * futex_set() - atomic decrement of the futex value
250 * @uaddr: the address of the futex to be modified
253 * Return the new futex value.