futex_lock_pi_atomic — Atomic work required to acquire a pi aware futex
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); |
u32 __user * uaddrthe pi futex user address
struct futex_hash_bucket * hbthe pi futex hash bucket
union futex_key * keythe futex key associated with uaddr and hb
struct futex_pi_state ** psthe pi_state pointer where we store the result of the lookup
struct task_struct * taskthe task to perform the atomic lock work for. This will be “current” except in the case of requeue pi.
int set_waitersforce setting the FUTEX_WAITERS bit (1) or not (0)