futex: Drop refcount if requeue_pi() acquired the rtmutex
authorThomas Gleixner <tglx@linutronix.de>
Sat, 19 Dec 2015 20:07:38 +0000 (20:07 +0000)
committerSasha Levin <sasha.levin@oracle.com>
Mon, 1 Feb 2016 16:53:47 +0000 (11:53 -0500)
commite70aade221a271f91e2d71901b2d602df2faee15
tree1065e9176f0c89c925254186106ebcf016ab0e75
parent51697d5f76e114f27ec08958ea1970fc55db0438
futex: Drop refcount if requeue_pi() acquired the rtmutex

[ Upstream commit fb75a4282d0d9a3c7c44d940582c2d226cf3acfb ]

If the proxy lock in the requeue loop acquires the rtmutex for a
waiter then it acquired also refcount on the pi_state related to the
futex, but the waiter side does not drop the reference count.

Add the missing free_pi_state() call.

Signed-off-by: Thomas 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.178132067@linutronix.de
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: stable@vger.kernel.org
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
kernel/futex.c