aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/futex.c
diff options
context:
space:
mode:
authorDarren Hart <dvhart@linux.intel.com>2012-07-20 14:53:30 -0400
committerThomas Gleixner <tglx@linutronix.de>2012-07-24 10:02:57 -0400
commitf27071cb7fe3e1d37a9dbe6c0dfc5395cd40fa43 (patch)
tree8a44c9205cc78556da5847a8310c1749ec248608 /kernel/futex.c
parentb6070a8d9853eda010a549fa9a09eb8d7269b929 (diff)
futex: Fix bug in WARN_ON for NULL q.pi_state
The WARN_ON in futex_wait_requeue_pi() for a NULL q.pi_state was testing the address (&q.pi_state) of the pointer instead of the value (q.pi_state) of the pointer. Correct it accordingly. Signed-off-by: Darren Hart <dvhart@linux.intel.com> Cc: Dave Jones <davej@redhat.com> Cc: stable@vger.kernel.org Link: http://lkml.kernel.org/r/1c85d97f6e5f79ec389a4ead3e367363c74bd09a.1342809673.git.dvhart@linux.intel.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel/futex.c')
-rw-r--r--kernel/futex.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/futex.c b/kernel/futex.c
index 05018bfe21a7..5551adaf7cdf 100644
--- a/kernel/futex.c
+++ b/kernel/futex.c
@@ -2343,7 +2343,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
2343 * signal. futex_unlock_pi() will not destroy the lock_ptr nor 2343 * signal. futex_unlock_pi() will not destroy the lock_ptr nor
2344 * the pi_state. 2344 * the pi_state.
2345 */ 2345 */
2346 WARN_ON(!&q.pi_state); 2346 WARN_ON(!q.pi_state);
2347 pi_mutex = &q.pi_state->pi_mutex; 2347 pi_mutex = &q.pi_state->pi_mutex;
2348 ret = rt_mutex_finish_proxy_lock(pi_mutex, to, &rt_waiter, 1); 2348 ret = rt_mutex_finish_proxy_lock(pi_mutex, to, &rt_waiter, 1);
2349 debug_rt_mutex_free_waiter(&rt_waiter); 2349 debug_rt_mutex_free_waiter(&rt_waiter);