| From 3a012920a66be29c9abb50b96eddde6dfe021c30 Mon Sep 17 00:00:00 2001 |
| From: Darren Hart <dvhart@linux.intel.com> |
| Date: Fri, 20 Jul 2012 11:53:30 -0700 |
| Subject: [PATCH] futex: Fix bug in WARN_ON for NULL q.pi_state |
| |
| commit f27071cb7fe3e1d37a9dbe6c0dfc5395cd40fa43 upstream. |
| |
| 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> |
| Link: http://lkml.kernel.org/r/1c85d97f6e5f79ec389a4ead3e367363c74bd09a.1342809673.git.dvhart@linux.intel.com |
| Signed-off-by: Thomas Gleixner <tglx@linutronix.de> |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| --- |
| kernel/futex.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| diff --git a/kernel/futex.c b/kernel/futex.c |
| index 4a8f72850152..d4e7f0ea1f94 100644 |
| --- a/kernel/futex.c |
| +++ b/kernel/futex.c |
| @@ -2321,7 +2321,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, int fshared, |
| * signal. futex_unlock_pi() will not destroy the lock_ptr nor |
| * the pi_state. |
| */ |
| - WARN_ON(!&q.pi_state); |
| + WARN_ON(!q.pi_state); |
| pi_mutex = &q.pi_state->pi_mutex; |
| ret = rt_mutex_finish_proxy_lock(pi_mutex, to, &rt_waiter, 1); |
| debug_rt_mutex_free_waiter(&rt_waiter); |
| -- |
| 1.8.5.2 |
| |