Commit 29e9ee5d authored by Thomas Gleixner's avatar Thomas Gleixner

futex: Rename free_pi_state() to put_pi_state()

free_pi_state() is confusing as it is in fact only freeing/caching the
pi state when the last reference is gone. Rename it to put_pi_state()
which reflects better what it is doing.
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Darren Hart <darren@dvhart.com>
Cc: Davidlohr Bueso <dave@stgolabs.net>
Cc: Bhuvanesh_Surachari@mentor.com
Cc: Andy Lowe <Andy_Lowe@mentor.com>
Link: http://lkml.kernel.org/r/20151219200607.259636467@linutronix.deSigned-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent fb75a428
......@@ -725,9 +725,12 @@ static struct futex_pi_state * alloc_pi_state(void)
}
/*
* Drops a reference to the pi_state object and frees or caches it
* when the last reference is gone.
*
* Must be called with the hb lock held.
*/
static void free_pi_state(struct futex_pi_state *pi_state)
static void put_pi_state(struct futex_pi_state *pi_state)
{
if (!pi_state)
return;
......@@ -1729,7 +1732,7 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags,
case 0:
break;
case -EFAULT:
free_pi_state(pi_state);
put_pi_state(pi_state);
pi_state = NULL;
double_unlock_hb(hb1, hb2);
hb_waiters_dec(hb2);
......@@ -1746,7 +1749,7 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags,
* exit to complete.
* - The user space value changed.
*/
free_pi_state(pi_state);
put_pi_state(pi_state);
pi_state = NULL;
double_unlock_hb(hb1, hb2);
hb_waiters_dec(hb2);
......@@ -1815,7 +1818,7 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags,
} else if (ret) {
/* -EDEADLK */
this->pi_state = NULL;
free_pi_state(pi_state);
put_pi_state(pi_state);
goto out_unlock;
}
}
......@@ -1824,7 +1827,7 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags,
}
out_unlock:
free_pi_state(pi_state);
put_pi_state(pi_state);
double_unlock_hb(hb1, hb2);
wake_up_q(&wake_q);
hb_waiters_dec(hb2);
......@@ -1973,7 +1976,7 @@ static void unqueue_me_pi(struct futex_q *q)
__unqueue_futex(q);
BUG_ON(!q->pi_state);
free_pi_state(q->pi_state);
put_pi_state(q->pi_state);
q->pi_state = NULL;
spin_unlock(q->lock_ptr);
......@@ -2759,7 +2762,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
* Drop the reference to the pi state which
* the requeue_pi() code acquired for us.
*/
free_pi_state(q.pi_state);
put_pi_state(q.pi_state);
spin_unlock(q.lock_ptr);
}
} else {
......
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