Lines Matching refs:uaddr

398 get_futex_key(u32 __user *uaddr, int fshared, union futex_key *key, int rw)  in get_futex_key()  argument
400 unsigned long address = (unsigned long)uaddr; in get_futex_key()
413 if (unlikely(!access_ok(rw, uaddr, sizeof(u32)))) in get_futex_key()
558 static int fault_in_user_writeable(u32 __user *uaddr) in fault_in_user_writeable() argument
564 ret = fixup_user_fault(current, mm, (unsigned long)uaddr, in fault_in_user_writeable()
590 static int cmpxchg_futex_value_locked(u32 *curval, u32 __user *uaddr, in cmpxchg_futex_value_locked() argument
596 ret = futex_atomic_cmpxchg_inatomic(curval, uaddr, uval, newval); in cmpxchg_futex_value_locked()
973 static int lock_pi_update_atomic(u32 __user *uaddr, u32 uval, u32 newval) in lock_pi_update_atomic() argument
977 if (unlikely(cmpxchg_futex_value_locked(&curval, uaddr, uval, newval))) in lock_pi_update_atomic()
1002 static int futex_lock_pi_atomic(u32 __user *uaddr, struct futex_hash_bucket *hb, in futex_lock_pi_atomic() argument
1015 if (get_futex_value_locked(&uval, uaddr)) in futex_lock_pi_atomic()
1050 ret = lock_pi_update_atomic(uaddr, uval, newval); in futex_lock_pi_atomic()
1061 ret = lock_pi_update_atomic(uaddr, uval, newval); in futex_lock_pi_atomic()
1125 static int wake_futex_pi(u32 __user *uaddr, u32 uval, struct futex_q *this) in wake_futex_pi() argument
1160 if (cmpxchg_futex_value_locked(&curval, uaddr, uval, newval)) { in wake_futex_pi()
1224 futex_wake(u32 __user *uaddr, unsigned int flags, int nr_wake, u32 bitset) in futex_wake() argument
1234 ret = get_futex_key(uaddr, flags & FLAGS_SHARED, &key, VERIFY_READ); in futex_wake()
1890 static int fixup_pi_state_owner(u32 __user *uaddr, struct futex_q *q, in fixup_pi_state_owner() argument
1921 if (get_futex_value_locked(&uval, uaddr)) in fixup_pi_state_owner()
1927 if (cmpxchg_futex_value_locked(&curval, uaddr, uval, newval)) in fixup_pi_state_owner()
1966 ret = fault_in_user_writeable(uaddr); in fixup_pi_state_owner()
1999 static int fixup_owner(u32 __user *uaddr, struct futex_q *q, int locked) in fixup_owner() argument
2010 ret = fixup_pi_state_owner(uaddr, q, current); in fixup_owner()
2039 ret = fixup_pi_state_owner(uaddr, q, owner); in fixup_owner()
2115 static int futex_wait_setup(u32 __user *uaddr, u32 val, unsigned int flags, in futex_wait_setup() argument
2140 ret = get_futex_key(uaddr, flags & FLAGS_SHARED, &q->key, VERIFY_READ); in futex_wait_setup()
2147 ret = get_futex_value_locked(&uval, uaddr); in futex_wait_setup()
2152 ret = get_user(uval, uaddr); in futex_wait_setup()
2174 static int futex_wait(u32 __user *uaddr, unsigned int flags, u32 val, in futex_wait() argument
2203 ret = futex_wait_setup(uaddr, val, flags, &q, &hb); in futex_wait()
2232 restart->futex.uaddr = uaddr; in futex_wait()
2251 u32 __user *uaddr = restart->futex.uaddr; in futex_wait_restart() local
2260 return (long)futex_wait(uaddr, restart->futex.flags, in futex_wait_restart()
2271 static int futex_lock_pi(u32 __user *uaddr, unsigned int flags, in futex_lock_pi() argument
2291 ret = get_futex_key(uaddr, flags & FLAGS_SHARED, &q.key, VERIFY_WRITE); in futex_lock_pi()
2298 ret = futex_lock_pi_atomic(uaddr, hb, &q.key, &q.pi_state, current, 0); in futex_lock_pi()
2345 res = fixup_owner(uaddr, &q, !ret); in futex_lock_pi()
2378 ret = fault_in_user_writeable(uaddr); in futex_lock_pi()
2394 static int futex_unlock_pi(u32 __user *uaddr, unsigned int flags) in futex_unlock_pi() argument
2403 if (get_user(uval, uaddr)) in futex_unlock_pi()
2411 ret = get_futex_key(uaddr, flags & FLAGS_SHARED, &key, VERIFY_WRITE); in futex_unlock_pi()
2425 ret = wake_futex_pi(uaddr, uval, match); in futex_unlock_pi()
2451 if (cmpxchg_futex_value_locked(&curval, uaddr, uval, 0)) in futex_unlock_pi()
2468 ret = fault_in_user_writeable(uaddr); in futex_unlock_pi()
2564 static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags, in futex_wait_requeue_pi() argument
2576 if (uaddr == uaddr2) in futex_wait_requeue_pi()
2613 ret = futex_wait_setup(uaddr, val, flags, &q, &hb); in futex_wait_requeue_pi()
2805 int handle_futex_death(u32 __user *uaddr, struct task_struct *curr, int pi) in handle_futex_death() argument
2810 if (get_user(uval, uaddr)) in handle_futex_death()
2834 if (cmpxchg_futex_value_locked(&nval, uaddr, uval, mval)) { in handle_futex_death()
2835 if (fault_in_user_writeable(uaddr)) in handle_futex_death()
2847 futex_wake(uaddr, 1, 1, FUTEX_BITSET_MATCH_ANY); in handle_futex_death()
2939 long do_futex(u32 __user *uaddr, int op, u32 val, ktime_t *timeout, in do_futex() argument
2968 return futex_wait(uaddr, flags, val, timeout, val3); in do_futex()
2972 return futex_wake(uaddr, flags, val, val3); in do_futex()
2974 return futex_requeue(uaddr, flags, uaddr2, val, val2, NULL, 0); in do_futex()
2976 return futex_requeue(uaddr, flags, uaddr2, val, val2, &val3, 0); in do_futex()
2978 return futex_wake_op(uaddr, flags, uaddr2, val, val2, val3); in do_futex()
2980 return futex_lock_pi(uaddr, flags, timeout, 0); in do_futex()
2982 return futex_unlock_pi(uaddr, flags); in do_futex()
2984 return futex_lock_pi(uaddr, flags, NULL, 1); in do_futex()
2987 return futex_wait_requeue_pi(uaddr, flags, val, timeout, val3, in do_futex()
2990 return futex_requeue(uaddr, flags, uaddr2, val, val2, &val3, 1); in do_futex()
2996 SYSCALL_DEFINE6(futex, u32 __user *, uaddr, int, op, u32, val, in SYSCALL_DEFINE6() argument
3026 return do_futex(uaddr, op, val, tp, uaddr2, val2, val3); in SYSCALL_DEFINE6()