Commit 9180bd46 authored by André Almeida's avatar André Almeida Committed by Thomas Gleixner

futex: Remove put_futex_key()

Since 4b39f99c ("futex: Remove {get,drop}_futex_key_refs()"),
put_futex_key() is empty.

Remove all references for this function and the then redundant labels.
Signed-off-by: default avatarAndré Almeida <andrealmeid@collabora.com>
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Link: https://lkml.kernel.org/r/20200702202843.520764-2-andrealmeid@collabora.com
parent a9232dc5
...@@ -677,10 +677,6 @@ get_futex_key(u32 __user *uaddr, int fshared, union futex_key *key, enum futex_a ...@@ -677,10 +677,6 @@ get_futex_key(u32 __user *uaddr, int fshared, union futex_key *key, enum futex_a
return err; return err;
} }
static inline void put_futex_key(union futex_key *key)
{
}
/** /**
* fault_in_user_writeable() - Fault in user address and verify RW access * fault_in_user_writeable() - Fault in user address and verify RW access
* @uaddr: pointer to faulting user space address * @uaddr: pointer to faulting user space address
...@@ -1617,7 +1613,7 @@ futex_wake(u32 __user *uaddr, unsigned int flags, int nr_wake, u32 bitset) ...@@ -1617,7 +1613,7 @@ futex_wake(u32 __user *uaddr, unsigned int flags, int nr_wake, u32 bitset)
/* Make sure we really have tasks to wakeup */ /* Make sure we really have tasks to wakeup */
if (!hb_waiters_pending(hb)) if (!hb_waiters_pending(hb))
goto out_put_key; goto out;
spin_lock(&hb->lock); spin_lock(&hb->lock);
...@@ -1640,8 +1636,6 @@ futex_wake(u32 __user *uaddr, unsigned int flags, int nr_wake, u32 bitset) ...@@ -1640,8 +1636,6 @@ futex_wake(u32 __user *uaddr, unsigned int flags, int nr_wake, u32 bitset)
spin_unlock(&hb->lock); spin_unlock(&hb->lock);
wake_up_q(&wake_q); wake_up_q(&wake_q);
out_put_key:
put_futex_key(&key);
out: out:
return ret; return ret;
} }
...@@ -1712,7 +1706,7 @@ futex_wake_op(u32 __user *uaddr1, unsigned int flags, u32 __user *uaddr2, ...@@ -1712,7 +1706,7 @@ futex_wake_op(u32 __user *uaddr1, unsigned int flags, u32 __user *uaddr2,
goto out; goto out;
ret = get_futex_key(uaddr2, flags & FLAGS_SHARED, &key2, FUTEX_WRITE); ret = get_futex_key(uaddr2, flags & FLAGS_SHARED, &key2, FUTEX_WRITE);
if (unlikely(ret != 0)) if (unlikely(ret != 0))
goto out_put_key1; goto out;
hb1 = hash_futex(&key1); hb1 = hash_futex(&key1);
hb2 = hash_futex(&key2); hb2 = hash_futex(&key2);
...@@ -1730,13 +1724,13 @@ futex_wake_op(u32 __user *uaddr1, unsigned int flags, u32 __user *uaddr2, ...@@ -1730,13 +1724,13 @@ futex_wake_op(u32 __user *uaddr1, unsigned int flags, u32 __user *uaddr2,
* an MMU, but we might get them from range checking * an MMU, but we might get them from range checking
*/ */
ret = op_ret; ret = op_ret;
goto out_put_keys; goto out;
} }
if (op_ret == -EFAULT) { if (op_ret == -EFAULT) {
ret = fault_in_user_writeable(uaddr2); ret = fault_in_user_writeable(uaddr2);
if (ret) if (ret)
goto out_put_keys; goto out;
} }
if (!(flags & FLAGS_SHARED)) { if (!(flags & FLAGS_SHARED)) {
...@@ -1744,8 +1738,6 @@ futex_wake_op(u32 __user *uaddr1, unsigned int flags, u32 __user *uaddr2, ...@@ -1744,8 +1738,6 @@ futex_wake_op(u32 __user *uaddr1, unsigned int flags, u32 __user *uaddr2,
goto retry_private; goto retry_private;
} }
put_futex_key(&key2);
put_futex_key(&key1);
cond_resched(); cond_resched();
goto retry; goto retry;
} }
...@@ -1781,10 +1773,6 @@ futex_wake_op(u32 __user *uaddr1, unsigned int flags, u32 __user *uaddr2, ...@@ -1781,10 +1773,6 @@ futex_wake_op(u32 __user *uaddr1, unsigned int flags, u32 __user *uaddr2,
out_unlock: out_unlock:
double_unlock_hb(hb1, hb2); double_unlock_hb(hb1, hb2);
wake_up_q(&wake_q); wake_up_q(&wake_q);
out_put_keys:
put_futex_key(&key2);
out_put_key1:
put_futex_key(&key1);
out: out:
return ret; return ret;
} }
...@@ -1996,7 +1984,7 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags, ...@@ -1996,7 +1984,7 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags,
ret = get_futex_key(uaddr2, flags & FLAGS_SHARED, &key2, ret = get_futex_key(uaddr2, flags & FLAGS_SHARED, &key2,
requeue_pi ? FUTEX_WRITE : FUTEX_READ); requeue_pi ? FUTEX_WRITE : FUTEX_READ);
if (unlikely(ret != 0)) if (unlikely(ret != 0))
goto out_put_key1; goto out;
/* /*
* The check above which compares uaddrs is not sufficient for * The check above which compares uaddrs is not sufficient for
...@@ -2004,7 +1992,7 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags, ...@@ -2004,7 +1992,7 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags,
*/ */
if (requeue_pi && match_futex(&key1, &key2)) { if (requeue_pi && match_futex(&key1, &key2)) {
ret = -EINVAL; ret = -EINVAL;
goto out_put_keys; goto out;
} }
hb1 = hash_futex(&key1); hb1 = hash_futex(&key1);
...@@ -2025,13 +2013,11 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags, ...@@ -2025,13 +2013,11 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags,
ret = get_user(curval, uaddr1); ret = get_user(curval, uaddr1);
if (ret) if (ret)
goto out_put_keys; goto out;
if (!(flags & FLAGS_SHARED)) if (!(flags & FLAGS_SHARED))
goto retry_private; goto retry_private;
put_futex_key(&key2);
put_futex_key(&key1);
goto retry; goto retry;
} }
if (curval != *cmpval) { if (curval != *cmpval) {
...@@ -2090,8 +2076,6 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags, ...@@ -2090,8 +2076,6 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags,
case -EFAULT: case -EFAULT:
double_unlock_hb(hb1, hb2); double_unlock_hb(hb1, hb2);
hb_waiters_dec(hb2); hb_waiters_dec(hb2);
put_futex_key(&key2);
put_futex_key(&key1);
ret = fault_in_user_writeable(uaddr2); ret = fault_in_user_writeable(uaddr2);
if (!ret) if (!ret)
goto retry; goto retry;
...@@ -2106,8 +2090,6 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags, ...@@ -2106,8 +2090,6 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags,
*/ */
double_unlock_hb(hb1, hb2); double_unlock_hb(hb1, hb2);
hb_waiters_dec(hb2); hb_waiters_dec(hb2);
put_futex_key(&key2);
put_futex_key(&key1);
/* /*
* Handle the case where the owner is in the middle of * Handle the case where the owner is in the middle of
* exiting. Wait for the exit to complete otherwise * exiting. Wait for the exit to complete otherwise
...@@ -2217,10 +2199,6 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags, ...@@ -2217,10 +2199,6 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags,
wake_up_q(&wake_q); wake_up_q(&wake_q);
hb_waiters_dec(hb2); hb_waiters_dec(hb2);
out_put_keys:
put_futex_key(&key2);
out_put_key1:
put_futex_key(&key1);
out: out:
return ret ? ret : task_count; return ret ? ret : task_count;
} }
...@@ -2697,7 +2675,6 @@ static int futex_wait_setup(u32 __user *uaddr, u32 val, unsigned int flags, ...@@ -2697,7 +2675,6 @@ static int futex_wait_setup(u32 __user *uaddr, u32 val, unsigned int flags,
if (!(flags & FLAGS_SHARED)) if (!(flags & FLAGS_SHARED))
goto retry_private; goto retry_private;
put_futex_key(&q->key);
goto retry; goto retry;
} }
...@@ -2707,8 +2684,6 @@ static int futex_wait_setup(u32 __user *uaddr, u32 val, unsigned int flags, ...@@ -2707,8 +2684,6 @@ static int futex_wait_setup(u32 __user *uaddr, u32 val, unsigned int flags,
} }
out: out:
if (ret)
put_futex_key(&q->key);
return ret; return ret;
} }
...@@ -2853,7 +2828,6 @@ static int futex_lock_pi(u32 __user *uaddr, unsigned int flags, ...@@ -2853,7 +2828,6 @@ static int futex_lock_pi(u32 __user *uaddr, unsigned int flags,
* - EAGAIN: The user space value changed. * - EAGAIN: The user space value changed.
*/ */
queue_unlock(hb); queue_unlock(hb);
put_futex_key(&q.key);
/* /*
* Handle the case where the owner is in the middle of * Handle the case where the owner is in the middle of
* exiting. Wait for the exit to complete otherwise * exiting. Wait for the exit to complete otherwise
...@@ -2961,13 +2935,11 @@ static int futex_lock_pi(u32 __user *uaddr, unsigned int flags, ...@@ -2961,13 +2935,11 @@ static int futex_lock_pi(u32 __user *uaddr, unsigned int flags,
put_pi_state(pi_state); put_pi_state(pi_state);
} }
goto out_put_key; goto out;
out_unlock_put_key: out_unlock_put_key:
queue_unlock(hb); queue_unlock(hb);
out_put_key:
put_futex_key(&q.key);
out: out:
if (to) { if (to) {
hrtimer_cancel(&to->timer); hrtimer_cancel(&to->timer);
...@@ -2980,12 +2952,11 @@ static int futex_lock_pi(u32 __user *uaddr, unsigned int flags, ...@@ -2980,12 +2952,11 @@ static int futex_lock_pi(u32 __user *uaddr, unsigned int flags,
ret = fault_in_user_writeable(uaddr); ret = fault_in_user_writeable(uaddr);
if (ret) if (ret)
goto out_put_key; goto out;
if (!(flags & FLAGS_SHARED)) if (!(flags & FLAGS_SHARED))
goto retry_private; goto retry_private;
put_futex_key(&q.key);
goto retry; goto retry;
} }
...@@ -3114,16 +3085,13 @@ static int futex_unlock_pi(u32 __user *uaddr, unsigned int flags) ...@@ -3114,16 +3085,13 @@ static int futex_unlock_pi(u32 __user *uaddr, unsigned int flags)
out_unlock: out_unlock:
spin_unlock(&hb->lock); spin_unlock(&hb->lock);
out_putkey: out_putkey:
put_futex_key(&key);
return ret; return ret;
pi_retry: pi_retry:
put_futex_key(&key);
cond_resched(); cond_resched();
goto retry; goto retry;
pi_faulted: pi_faulted:
put_futex_key(&key);
ret = fault_in_user_writeable(uaddr); ret = fault_in_user_writeable(uaddr);
if (!ret) if (!ret)
...@@ -3265,7 +3233,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags, ...@@ -3265,7 +3233,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
*/ */
ret = futex_wait_setup(uaddr, val, flags, &q, &hb); ret = futex_wait_setup(uaddr, val, flags, &q, &hb);
if (ret) if (ret)
goto out_key2; goto out;
/* /*
* The check above which compares uaddrs is not sufficient for * The check above which compares uaddrs is not sufficient for
...@@ -3274,7 +3242,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags, ...@@ -3274,7 +3242,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
if (match_futex(&q.key, &key2)) { if (match_futex(&q.key, &key2)) {
queue_unlock(hb); queue_unlock(hb);
ret = -EINVAL; ret = -EINVAL;
goto out_put_keys; goto out;
} }
/* Queue the futex_q, drop the hb lock, wait for wakeup. */ /* Queue the futex_q, drop the hb lock, wait for wakeup. */
...@@ -3284,7 +3252,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags, ...@@ -3284,7 +3252,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
ret = handle_early_requeue_pi_wakeup(hb, &q, &key2, to); ret = handle_early_requeue_pi_wakeup(hb, &q, &key2, to);
spin_unlock(&hb->lock); spin_unlock(&hb->lock);
if (ret) if (ret)
goto out_put_keys; goto out;
/* /*
* In order for us to be here, we know our q.key == key2, and since * In order for us to be here, we know our q.key == key2, and since
...@@ -3374,11 +3342,6 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags, ...@@ -3374,11 +3342,6 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
ret = -EWOULDBLOCK; ret = -EWOULDBLOCK;
} }
out_put_keys:
put_futex_key(&q.key);
out_key2:
put_futex_key(&key2);
out: out:
if (to) { if (to) {
hrtimer_cancel(&to->timer); hrtimer_cancel(&to->timer);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment