Lines Matching refs:uval
668 u32 uval, u32 newval) in cmpxchg_futex_value_locked() argument
673 ret = futex_atomic_cmpxchg_inatomic(curval, uaddr, uval, newval); in cmpxchg_futex_value_locked()
892 static int attach_to_pi_state(u32 uval, struct futex_pi_state *pi_state, in attach_to_pi_state() argument
895 pid_t pid = uval & FUTEX_TID_MASK; in attach_to_pi_state()
908 if (uval & FUTEX_OWNER_DIED) { in attach_to_pi_state()
963 static int attach_to_pi_owner(u32 uval, union futex_key *key, in attach_to_pi_owner() argument
966 pid_t pid = uval & FUTEX_TID_MASK; in attach_to_pi_owner()
1031 static int lookup_pi_state(u32 uval, struct futex_hash_bucket *hb, in lookup_pi_state() argument
1041 return attach_to_pi_state(uval, match->pi_state, ps); in lookup_pi_state()
1047 return attach_to_pi_owner(uval, key, ps); in lookup_pi_state()
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()
1061 return curval != uval ? -EAGAIN : 0; in lock_pi_update_atomic()
1087 u32 uval, newval, vpid = task_pid_vnr(task); in futex_lock_pi_atomic() local
1095 if (get_futex_value_locked(&uval, uaddr)) in futex_lock_pi_atomic()
1104 if ((unlikely((uval & FUTEX_TID_MASK) == vpid))) in futex_lock_pi_atomic()
1116 return attach_to_pi_state(uval, match->pi_state, ps); in futex_lock_pi_atomic()
1124 if (!(uval & FUTEX_TID_MASK)) { in futex_lock_pi_atomic()
1129 newval = uval & FUTEX_OWNER_DIED; in futex_lock_pi_atomic()
1136 ret = lock_pi_update_atomic(uaddr, uval, newval); in futex_lock_pi_atomic()
1146 newval = uval | FUTEX_WAITERS; in futex_lock_pi_atomic()
1147 ret = lock_pi_update_atomic(uaddr, uval, newval); in futex_lock_pi_atomic()
1155 return attach_to_pi_owner(uval, key, ps); 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()
1249 } else if (curval != uval) { in wake_futex_pi()
1256 if ((FUTEX_TID_MASK & curval) == uval) in wake_futex_pi()
2004 u32 uval, uninitialized_var(curval), newval; in fixup_pi_state_owner() local
2029 if (get_futex_value_locked(&uval, uaddr)) in fixup_pi_state_owner()
2033 newval = (uval & FUTEX_OWNER_DIED) | newtid; in fixup_pi_state_owner()
2035 if (cmpxchg_futex_value_locked(&curval, uaddr, uval, newval)) in fixup_pi_state_owner()
2037 if (curval == uval) in fixup_pi_state_owner()
2039 uval = curval; in fixup_pi_state_owner()
2223 u32 uval; in futex_wait_setup() local
2252 ret = get_futex_value_locked(&uval, uaddr); in futex_wait_setup()
2257 ret = get_user(uval, uaddr); in futex_wait_setup()
2268 if (uval != val) { in futex_wait_setup()
2508 u32 uninitialized_var(curval), uval, vpid = task_pid_vnr(current); in futex_unlock_pi()
2515 if (get_user(uval, uaddr)) in futex_unlock_pi()
2520 if ((uval & FUTEX_TID_MASK) != vpid) 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()
2579 ret = (curval == uval) ? 0 : -EAGAIN; in futex_unlock_pi()
2930 u32 uval, uninitialized_var(nval), mval; in handle_futex_death() local
2933 if (get_user(uval, uaddr)) in handle_futex_death()
2936 if ((uval & FUTEX_TID_MASK) == task_pid_vnr(curr)) { in handle_futex_death()
2947 mval = (uval & FUTEX_WAITERS) | FUTEX_OWNER_DIED; in handle_futex_death()
2957 if (cmpxchg_futex_value_locked(&nval, uaddr, uval, mval)) { in handle_futex_death()
2962 if (nval != uval) in handle_futex_death()
2969 if (!pi && (uval & FUTEX_WAITERS)) in handle_futex_death()