Lines Matching refs:uaddr

468 get_futex_key(u32 __user *uaddr, int fshared, union futex_key *key, int rw)  in get_futex_key()  argument
470 unsigned long address = (unsigned long)uaddr; in get_futex_key()
483 if (unlikely(!access_ok(rw, uaddr, sizeof(u32)))) in get_futex_key()
635 static int fault_in_user_writeable(u32 __user *uaddr) in fault_in_user_writeable() argument
641 ret = fixup_user_fault(current, mm, (unsigned long)uaddr, in fault_in_user_writeable()
667 static int cmpxchg_futex_value_locked(u32 *curval, u32 __user *uaddr, in cmpxchg_futex_value_locked() argument
673 ret = futex_atomic_cmpxchg_inatomic(curval, uaddr, uval, newval); in cmpxchg_futex_value_locked()
1050 static int lock_pi_update_atomic(u32 __user *uaddr, u32 uval, u32 newval) in lock_pi_update_atomic() argument
1057 if (unlikely(cmpxchg_futex_value_locked(&curval, uaddr, uval, newval))) in lock_pi_update_atomic()
1082 static int futex_lock_pi_atomic(u32 __user *uaddr, struct futex_hash_bucket *hb, in futex_lock_pi_atomic() argument
1095 if (get_futex_value_locked(&uval, uaddr)) in futex_lock_pi_atomic()
1136 ret = lock_pi_update_atomic(uaddr, uval, newval); in futex_lock_pi_atomic()
1147 ret = lock_pi_update_atomic(uaddr, uval, newval); in futex_lock_pi_atomic()
1206 static int wake_futex_pi(u32 __user *uaddr, u32 uval, struct futex_q *this, in wake_futex_pi() argument
1247 if (cmpxchg_futex_value_locked(&curval, uaddr, uval, newval)) { in wake_futex_pi()
1323 futex_wake(u32 __user *uaddr, unsigned int flags, int nr_wake, u32 bitset) in futex_wake() argument
1334 ret = get_futex_key(uaddr, flags & FLAGS_SHARED, &key, VERIFY_READ); in futex_wake()
1998 static int fixup_pi_state_owner(u32 __user *uaddr, struct futex_q *q, in fixup_pi_state_owner() argument
2029 if (get_futex_value_locked(&uval, uaddr)) in fixup_pi_state_owner()
2035 if (cmpxchg_futex_value_locked(&curval, uaddr, uval, newval)) in fixup_pi_state_owner()
2074 ret = fault_in_user_writeable(uaddr); in fixup_pi_state_owner()
2107 static int fixup_owner(u32 __user *uaddr, struct futex_q *q, int locked) in fixup_owner() argument
2118 ret = fixup_pi_state_owner(uaddr, q, current); in fixup_owner()
2147 ret = fixup_pi_state_owner(uaddr, q, owner); in fixup_owner()
2220 static int futex_wait_setup(u32 __user *uaddr, u32 val, unsigned int flags, in futex_wait_setup() argument
2245 ret = get_futex_key(uaddr, flags & FLAGS_SHARED, &q->key, VERIFY_READ); in futex_wait_setup()
2252 ret = get_futex_value_locked(&uval, uaddr); in futex_wait_setup()
2257 ret = get_user(uval, uaddr); in futex_wait_setup()
2279 static int futex_wait(u32 __user *uaddr, unsigned int flags, u32 val, in futex_wait() argument
2308 ret = futex_wait_setup(uaddr, val, flags, &q, &hb); in futex_wait()
2337 restart->futex.uaddr = uaddr; in futex_wait()
2356 u32 __user *uaddr = restart->futex.uaddr; in futex_wait_restart() local
2365 return (long)futex_wait(uaddr, restart->futex.flags, in futex_wait_restart()
2379 static int futex_lock_pi(u32 __user *uaddr, unsigned int flags, in futex_lock_pi() argument
2399 ret = get_futex_key(uaddr, flags & FLAGS_SHARED, &q.key, VERIFY_WRITE); in futex_lock_pi()
2406 ret = futex_lock_pi_atomic(uaddr, hb, &q.key, &q.pi_state, current, 0); in futex_lock_pi()
2457 res = fixup_owner(uaddr, &q, !ret); in futex_lock_pi()
2490 ret = fault_in_user_writeable(uaddr); in futex_lock_pi()
2506 static int futex_unlock_pi(u32 __user *uaddr, unsigned int flags) in futex_unlock_pi() argument
2515 if (get_user(uval, uaddr)) in futex_unlock_pi()
2523 ret = get_futex_key(uaddr, flags & FLAGS_SHARED, &key, VERIFY_WRITE); in futex_unlock_pi()
2537 ret = wake_futex_pi(uaddr, uval, match, hb); in futex_unlock_pi()
2573 if (cmpxchg_futex_value_locked(&curval, uaddr, uval, 0)) in futex_unlock_pi()
2591 ret = fault_in_user_writeable(uaddr); in futex_unlock_pi()
2687 static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags, in futex_wait_requeue_pi() argument
2699 if (uaddr == uaddr2) in futex_wait_requeue_pi()
2736 ret = futex_wait_setup(uaddr, val, flags, &q, &hb); in futex_wait_requeue_pi()
2928 int handle_futex_death(u32 __user *uaddr, struct task_struct *curr, int pi) in handle_futex_death() argument
2933 if (get_user(uval, uaddr)) in handle_futex_death()
2957 if (cmpxchg_futex_value_locked(&nval, uaddr, uval, mval)) { in handle_futex_death()
2958 if (fault_in_user_writeable(uaddr)) in handle_futex_death()
2970 futex_wake(uaddr, 1, 1, FUTEX_BITSET_MATCH_ANY); in handle_futex_death()
3062 long do_futex(u32 __user *uaddr, int op, u32 val, ktime_t *timeout, in do_futex() argument
3091 return futex_wait(uaddr, flags, val, timeout, val3); in do_futex()
3095 return futex_wake(uaddr, flags, val, val3); in do_futex()
3097 return futex_requeue(uaddr, flags, uaddr2, val, val2, NULL, 0); in do_futex()
3099 return futex_requeue(uaddr, flags, uaddr2, val, val2, &val3, 0); in do_futex()
3101 return futex_wake_op(uaddr, flags, uaddr2, val, val2, val3); in do_futex()
3103 return futex_lock_pi(uaddr, flags, timeout, 0); in do_futex()
3105 return futex_unlock_pi(uaddr, flags); in do_futex()
3107 return futex_lock_pi(uaddr, flags, NULL, 1); in do_futex()
3110 return futex_wait_requeue_pi(uaddr, flags, val, timeout, val3, in do_futex()
3113 return futex_requeue(uaddr, flags, uaddr2, val, val2, &val3, 1); in do_futex()
3119 SYSCALL_DEFINE6(futex, u32 __user *, uaddr, int, op, u32, val, in SYSCALL_DEFINE6() argument
3151 return do_futex(uaddr, op, val, tp, uaddr2, val2, val3); in SYSCALL_DEFINE6()