futex_key
#define FUTEX_KEY_INIT (union futex_key) { .both = { .ptr = 0ULL } }
__futex_hash(union futex_key *key, struct futex_private_hash *fph);
union futex_key key = FUTEX_KEY_INIT;
static inline bool futex_key_is_private(union futex_key *key)
__futex_hash_private(union futex_key *key, struct futex_private_hash *fph)
struct futex_hash_bucket *futex_hash(union futex_key *key)
__futex_hash_private(union futex_key *key, struct futex_private_hash *fph)
struct futex_hash_bucket *futex_hash(union futex_key *key)
__futex_hash(union futex_key *key, struct futex_private_hash *fph)
int get_futex_key(u32 __user *uaddr, unsigned int flags, union futex_key *key,
struct futex_q *futex_top_waiter(struct futex_hash_bucket *hb, union futex_key *key)
union futex_key key;
union futex_key key;
union futex_key *requeue_pi_key;
extern int get_futex_key(u32 __user *uaddr, unsigned int flags, union futex_key *key,
extern struct futex_hash_bucket *futex_hash(union futex_key *key);
futex_hash(key), union futex_key *key);
static inline int futex_match(union futex_key *key1, union futex_key *key2)
struct futex_q *q, union futex_key *key2,
extern struct futex_q *futex_top_waiter(struct futex_hash_bucket *hb, union futex_key *key);
union futex_key *key,
union futex_key key = FUTEX_KEY_INIT;
static void __attach_to_pi_owner(struct task_struct *p, union futex_key *key,
static int attach_to_pi_owner(u32 __user *uaddr, u32 uval, union futex_key *key,
union futex_key *key,
void requeue_pi_wake_futex(struct futex_q *q, union futex_key *key,
struct futex_hash_bucket *hb2, union futex_key *key1,
union futex_key *key2, struct futex_pi_state **ps,
union futex_key key1 = FUTEX_KEY_INIT, key2 = FUTEX_KEY_INIT;
struct futex_hash_bucket *hb2, union futex_key *key2)
union futex_key key2 = FUTEX_KEY_INIT;
union futex_key key = FUTEX_KEY_INIT;
union futex_key key1 = FUTEX_KEY_INIT, key2 = FUTEX_KEY_INIT;
struct futex_q *q, union futex_key *key2,