FUTEX_LOCK_PI_ATOMIC(9)

NAME
futex_lock_pi_atomic - Atomic work required to acquire a pi aware futex

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.

AUTHOR

Rusty Russell <rusty@rustcorp.com.au>
    Author.

COPYRIGHT