Lines Matching refs:uval
591 u32 uval, u32 newval) in cmpxchg_futex_value_locked() argument
596 ret = futex_atomic_cmpxchg_inatomic(curval, uaddr, uval, newval); in cmpxchg_futex_value_locked()
815 static int attach_to_pi_state(u32 uval, struct futex_pi_state *pi_state, in attach_to_pi_state() argument
818 pid_t pid = uval & FUTEX_TID_MASK; in attach_to_pi_state()
831 if (uval & FUTEX_OWNER_DIED) { in attach_to_pi_state()
886 static int attach_to_pi_owner(u32 uval, union futex_key *key, in attach_to_pi_owner() argument
889 pid_t pid = uval & FUTEX_TID_MASK; in attach_to_pi_owner()
954 static int lookup_pi_state(u32 uval, struct futex_hash_bucket *hb, in lookup_pi_state() argument
964 return attach_to_pi_state(uval, match->pi_state, ps); in lookup_pi_state()
970 return attach_to_pi_owner(uval, key, ps); in lookup_pi_state()
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()
981 return curval != uval ? -EAGAIN : 0; in lock_pi_update_atomic()
1007 u32 uval, newval, vpid = task_pid_vnr(task); in futex_lock_pi_atomic() local
1015 if (get_futex_value_locked(&uval, uaddr)) in futex_lock_pi_atomic()
1021 if ((unlikely((uval & FUTEX_TID_MASK) == vpid))) in futex_lock_pi_atomic()
1030 return attach_to_pi_state(uval, match->pi_state, ps); in futex_lock_pi_atomic()
1038 if (!(uval & FUTEX_TID_MASK)) { in futex_lock_pi_atomic()
1043 newval = uval & FUTEX_OWNER_DIED; in futex_lock_pi_atomic()
1050 ret = lock_pi_update_atomic(uaddr, uval, newval); in futex_lock_pi_atomic()
1060 newval = uval | FUTEX_WAITERS; in futex_lock_pi_atomic()
1061 ret = lock_pi_update_atomic(uaddr, uval, newval); in futex_lock_pi_atomic()
1069 return attach_to_pi_owner(uval, key, ps); 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()
1162 } else if (curval != uval) { in wake_futex_pi()
1169 if ((FUTEX_TID_MASK & curval) == uval) in wake_futex_pi()
1896 u32 uval, uninitialized_var(curval), newval; in fixup_pi_state_owner() local
1921 if (get_futex_value_locked(&uval, uaddr)) in fixup_pi_state_owner()
1925 newval = (uval & FUTEX_OWNER_DIED) | newtid; in fixup_pi_state_owner()
1927 if (cmpxchg_futex_value_locked(&curval, uaddr, uval, newval)) in fixup_pi_state_owner()
1929 if (curval == uval) in fixup_pi_state_owner()
1931 uval = curval; in fixup_pi_state_owner()
2118 u32 uval; in futex_wait_setup() local
2147 ret = get_futex_value_locked(&uval, uaddr); in futex_wait_setup()
2152 ret = get_user(uval, uaddr); in futex_wait_setup()
2163 if (uval != val) { in futex_wait_setup()
2396 u32 uninitialized_var(curval), uval, vpid = task_pid_vnr(current); in futex_unlock_pi()
2403 if (get_user(uval, uaddr)) in futex_unlock_pi()
2408 if ((uval & FUTEX_TID_MASK) != vpid) 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()
2457 ret = (curval == uval) ? 0 : -EAGAIN; in futex_unlock_pi()
2807 u32 uval, uninitialized_var(nval), mval; in handle_futex_death() local
2810 if (get_user(uval, uaddr)) in handle_futex_death()
2813 if ((uval & FUTEX_TID_MASK) == task_pid_vnr(curr)) { in handle_futex_death()
2824 mval = (uval & FUTEX_WAITERS) | FUTEX_OWNER_DIED; in handle_futex_death()
2834 if (cmpxchg_futex_value_locked(&nval, uaddr, uval, mval)) { in handle_futex_death()
2839 if (nval != uval) in handle_futex_death()
2846 if (!pi && (uval & FUTEX_WAITERS)) in handle_futex_death()