SYNOPSIS
- int futex_lock_pi_atomic(u32 __user * uaddr, struct futex_hash_bucket * hb, union futex_key * key, struct futex_pi_state ** ps, struct task_struct * task, int set_waiters);
ARGUMENTS
uaddr
-
- the pi futex user address
hb
- the pi futex hash bucket
key
- the futex key associated with uaddr and hb
ps
- the pi_state pointer where we store the result of the lookup
task
- the task to perform the atomic lock work for. This will be "current" except in the case of requeue pi.
set_waiters
- force setting the FUTEX_WAITERS bit (1) or not (0)
RETURN
0 - ready to wait; 1 - acquired the lock; <0 - error
The hb->lock and futex_key refs shall be held by the caller.
COPYRIGHT