mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 19:08:57 +09:00
futex: Cleanup variable names for futex_top_waiter()
From: Peter Zijlstra <peterz@infradead.org>
commit 499f5aca2c upstream.
futex_top_waiter() returns the top-waiter on the pi_mutex. Assinging
this to a variable 'match' totally obscures the code.
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: juri.lelli@arm.com
Cc: bigeasy@linutronix.de
Cc: xlpang@redhat.com
Cc: rostedt@goodmis.org
Cc: mathieu.desnoyers@efficios.com
Cc: jdesfossez@efficios.com
Cc: dvhart@infradead.org
Cc: bristot@redhat.com
Link: http://lkml.kernel.org/r/20170322104151.554710645@infradead.org
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
[bwh: Backported to 4.9: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
@@ -1352,14 +1352,14 @@ static int lookup_pi_state(u32 __user *uaddr, u32 uval,
|
||||
union futex_key *key, struct futex_pi_state **ps,
|
||||
struct task_struct **exiting)
|
||||
{
|
||||
struct futex_q *match = futex_top_waiter(hb, key);
|
||||
struct futex_q *top_waiter = futex_top_waiter(hb, key);
|
||||
|
||||
/*
|
||||
* If there is a waiter on that futex, validate it and
|
||||
* attach to the pi_state when the validation succeeds.
|
||||
*/
|
||||
if (match)
|
||||
return attach_to_pi_state(uaddr, uval, match->pi_state, ps);
|
||||
if (top_waiter)
|
||||
return attach_to_pi_state(uaddr, uval, top_waiter->pi_state, ps);
|
||||
|
||||
/*
|
||||
* We are the first waiter - try to look up the owner based on
|
||||
@@ -1414,7 +1414,7 @@ static int futex_lock_pi_atomic(u32 __user *uaddr, struct futex_hash_bucket *hb,
|
||||
int set_waiters)
|
||||
{
|
||||
u32 uval, newval, vpid = task_pid_vnr(task);
|
||||
struct futex_q *match;
|
||||
struct futex_q *top_waiter;
|
||||
int ret;
|
||||
|
||||
/*
|
||||
@@ -1440,9 +1440,9 @@ static int futex_lock_pi_atomic(u32 __user *uaddr, struct futex_hash_bucket *hb,
|
||||
* Lookup existing state first. If it exists, try to attach to
|
||||
* its pi_state.
|
||||
*/
|
||||
match = futex_top_waiter(hb, key);
|
||||
if (match)
|
||||
return attach_to_pi_state(uaddr, uval, match->pi_state, ps);
|
||||
top_waiter = futex_top_waiter(hb, key);
|
||||
if (top_waiter)
|
||||
return attach_to_pi_state(uaddr, uval, top_waiter->pi_state, ps);
|
||||
|
||||
/*
|
||||
* No waiter and user TID is 0. We are here because the
|
||||
@@ -1532,11 +1532,11 @@ static void mark_wake_futex(struct wake_q_head *wake_q, struct futex_q *q)
|
||||
q->lock_ptr = NULL;
|
||||
}
|
||||
|
||||
static int wake_futex_pi(u32 __user *uaddr, u32 uval, struct futex_q *this,
|
||||
static int wake_futex_pi(u32 __user *uaddr, u32 uval, struct futex_q *top_waiter,
|
||||
struct futex_hash_bucket *hb)
|
||||
{
|
||||
struct task_struct *new_owner;
|
||||
struct futex_pi_state *pi_state = this->pi_state;
|
||||
struct futex_pi_state *pi_state = top_waiter->pi_state;
|
||||
u32 uninitialized_var(curval), newval;
|
||||
WAKE_Q(wake_q);
|
||||
bool deboost;
|
||||
@@ -1557,7 +1557,7 @@ static int wake_futex_pi(u32 __user *uaddr, u32 uval, struct futex_q *this,
|
||||
|
||||
/*
|
||||
* When we interleave with futex_lock_pi() where it does
|
||||
* rt_mutex_timed_futex_lock(), we might observe @this futex_q waiter,
|
||||
* rt_mutex_timed_futex_lock(), we might observe @top_waiter futex_q waiter,
|
||||
* but the rt_mutex's wait_list can be empty (either still, or again,
|
||||
* depending on which side we land).
|
||||
*
|
||||
@@ -2975,7 +2975,7 @@ static int futex_unlock_pi(u32 __user *uaddr, unsigned int flags)
|
||||
u32 uninitialized_var(curval), uval, vpid = task_pid_vnr(current);
|
||||
union futex_key key = FUTEX_KEY_INIT;
|
||||
struct futex_hash_bucket *hb;
|
||||
struct futex_q *match;
|
||||
struct futex_q *top_waiter;
|
||||
int ret;
|
||||
|
||||
retry:
|
||||
@@ -2999,9 +2999,9 @@ retry:
|
||||
* all and we at least want to know if user space fiddled
|
||||
* with the futex value instead of blindly unlocking.
|
||||
*/
|
||||
match = futex_top_waiter(hb, &key);
|
||||
if (match) {
|
||||
ret = wake_futex_pi(uaddr, uval, match, hb);
|
||||
top_waiter = futex_top_waiter(hb, &key);
|
||||
if (top_waiter) {
|
||||
ret = wake_futex_pi(uaddr, uval, top_waiter, hb);
|
||||
/*
|
||||
* In case of success wake_futex_pi dropped the hash
|
||||
* bucket lock.
|
||||
|
||||
Reference in New Issue
Block a user