futex: Check for NULL keys in match_futex
authorDarren Hart <dvhltc@us.ibm.com>
Wed, 14 Oct 2009 17:12:39 +0000 (10:12 -0700)
committerThomas Gleixner <tglx@linutronix.de>
Wed, 14 Oct 2009 20:00:14 +0000 (22:00 +0200)
commit2bc872036e1c5948b5b02942810bbdd8dbdb9812
treec91cc2791366214c5f924ff5aa77c24a7403fe40
parentd58e6576b0deec6f0b9ff8450fe282da18c50883
futex: Check for NULL keys in match_futex

If userspace tries to perform a requeue_pi on a non-requeue_pi waiter,
it will find the futex_q->requeue_pi_key to be NULL and OOPS.

Check for NULL in match_futex() instead of doing explicit NULL pointer
checks on all call sites.  While match_futex(NULL, NULL) returning
false is a little odd, it's still correct as we expect valid key
references.

Signed-off-by: Darren Hart <dvhltc@us.ibm.com>
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>
Cc: stable@kernel.org
LKML-Reference: <4AD60687.10306@us.ibm.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
kernel/futex.c