All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] futex: fix requeue_pi key imbalance
@ 2009-10-07 18:46 Darren Hart
  2009-10-07 19:25 ` [tip:core/urgent] " tip-bot for Darren Hart
  0 siblings, 1 reply; 2+ messages in thread
From: Darren Hart @ 2009-10-07 18:46 UTC (permalink / raw)
  To: lkml, 
  Cc: Helge Bahmann, Thomas Gleixner, Peter Zijlstra, Ingo Molnar,
	Eric Dumazet, Dinakar Guniguntala, John Stultz

futex: fix requeue_pi key imbalance

From: Darren Hart <dvhltc@us.ibm.com>

If futex_wait_requeue_pi() wakes prior to requeue, we drop the reference to the
source futex_key twice, once in handle_early_requeue_pi_wakeup() and once on
our way out. Remove the drop from the handle_early_requeue_pi_wakeup() and keep
the get/drops together in futex_wait_requeue_pi().

Reported-by: Helge Bahmann <hcb@chaoticmind.net>
Signed-off-by: Darren Hart <dvhltc@us.ibm.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Ingo Molnar <mingo@elte.hu>
CC: Eric Dumazet <eric.dumazet@gmail.com>
CC: Dinakar Guniguntala <dino@in.ibm.com>
CC: John Stultz <johnstul@us.ibm.com>
---

 kernel/futex.c |    1 -
 1 files changed, 0 insertions(+), 1 deletions(-)


Index: linux-2.6.git/kernel/futex.c
===================================================================
--- linux-2.6.git.orig/kernel/futex.c
+++ linux-2.6.git/kernel/futex.c
@@ -2117,7 +2117,6 @@ int handle_early_requeue_pi_wakeup(struc
 		 * Unqueue the futex_q and determine which it was.
 		 */
 		plist_del(&q->list, &q->list.plist);
-		drop_futex_key_refs(&q->key);
 
 		if (timeout && !timeout->task)
 			ret = -ETIMEDOUT;
-- 
Darren Hart
IBM Linux Technology Center
Real-Time Linux Team

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2009-10-07 19:26 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-07 18:46 [PATCH] futex: fix requeue_pi key imbalance Darren Hart
2009-10-07 19:25 ` [tip:core/urgent] " tip-bot for Darren Hart

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.