return NULL;
}
-static int cmpxchg_futex_value_locked(u32 *curval, u32 __user *uaddr,
+static int futex_cmpxchg_value_locked(u32 *curval, u32 __user *uaddr,
u32 uval, u32 newval)
{
int ret;
return ret;
}
-static int get_futex_value_locked(u32 *dest, u32 __user *from)
+static int futex_get_value_locked(u32 *dest, u32 __user *from)
{
int ret;
* still is what we expect it to be, otherwise retry the entire
* operation.
*/
- if (get_futex_value_locked(&uval2, uaddr))
+ if (futex_get_value_locked(&uval2, uaddr))
goto out_efault;
if (uval != uval2)
* The same logic applies to the case where the exiting task is
* already gone.
*/
- if (get_futex_value_locked(&uval2, uaddr))
+ if (futex_get_value_locked(&uval2, uaddr))
return -EFAULT;
/* If the user space value has changed, try again. */
if (unlikely(should_fail_futex(true)))
return -EFAULT;
- err = cmpxchg_futex_value_locked(&curval, uaddr, uval, newval);
+ err = futex_cmpxchg_value_locked(&curval, uaddr, uval, newval);
if (unlikely(err))
return err;
* Read the user space value first so we can validate a few
* things before proceeding further.
*/
- if (get_futex_value_locked(&uval, uaddr))
+ if (futex_get_value_locked(&uval, uaddr))
return -EFAULT;
if (unlikely(should_fail_futex(true)))
goto out_unlock;
}
- ret = cmpxchg_futex_value_locked(&curval, uaddr, uval, newval);
+ ret = futex_cmpxchg_value_locked(&curval, uaddr, uval, newval);
if (!ret && (curval != uval)) {
/*
* If a unconditional UNLOCK_PI operation (user space did not
u32 curval;
int ret;
- if (get_futex_value_locked(&curval, pifutex))
+ if (futex_get_value_locked(&curval, pifutex))
return -EFAULT;
if (unlikely(should_fail_futex(true)))
if (likely(cmpval != NULL)) {
u32 curval;
- ret = get_futex_value_locked(&curval, uaddr1);
+ ret = futex_get_value_locked(&curval, uaddr1);
if (unlikely(ret)) {
double_unlock_hb(hb1, hb2);
if (!pi_state->owner)
newtid |= FUTEX_OWNER_DIED;
- err = get_futex_value_locked(&uval, uaddr);
+ err = futex_get_value_locked(&uval, uaddr);
if (err)
goto handle_err;
for (;;) {
newval = (uval & FUTEX_OWNER_DIED) | newtid;
- err = cmpxchg_futex_value_locked(&curval, uaddr, uval, newval);
+ err = futex_cmpxchg_value_locked(&curval, uaddr, uval, newval);
if (err)
goto handle_err;
retry_private:
*hb = futex_q_lock(q);
- ret = get_futex_value_locked(&uval, uaddr);
+ ret = futex_get_value_locked(&uval, uaddr);
if (ret) {
futex_q_unlock(*hb);
* preserve the WAITERS bit not the OWNER_DIED one. We are the
* owner.
*/
- if ((ret = cmpxchg_futex_value_locked(&curval, uaddr, uval, 0))) {
+ if ((ret = futex_cmpxchg_value_locked(&curval, uaddr, uval, 0))) {
spin_unlock(&hb->lock);
switch (ret) {
case -EFAULT:
* does not guarantee R/W access. If that fails we
* give up and leave the futex locked.
*/
- if ((err = cmpxchg_futex_value_locked(&nval, uaddr, uval, mval))) {
+ if ((err = futex_cmpxchg_value_locked(&nval, uaddr, uval, mval))) {
switch (err) {
case -EFAULT:
if (fault_in_user_writeable(uaddr))
* implementation, the non-functional ones will return
* -ENOSYS.
*/
- if (cmpxchg_futex_value_locked(&curval, NULL, 0, 0) == -EFAULT)
+ if (futex_cmpxchg_value_locked(&curval, NULL, 0, 0) == -EFAULT)
futex_cmpxchg_enabled = 1;
#endif
}