futex_requeue_pi optimization
authorPierre Peiffer <pierre.peiffer@bull.net>
Wed, 9 May 2007 09:35:02 +0000 (02:35 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Wed, 9 May 2007 19:30:55 +0000 (12:30 -0700)
commitd0aa7a70bf03b9de9e995ab272293be1f7937822
tree194b30b7b8374b946f166996cb99fb95eb3b7819
parentc19384b5b296905d4988c7c684ff540a0f9d65be
futex_requeue_pi optimization

This patch provides the futex_requeue_pi functionality, which allows some
threads waiting on a normal futex to be requeued on the wait-queue of a
PI-futex.

This provides an optimization, already used for (normal) futexes, to be used
with the PI-futexes.

This optimization is currently used by the glibc in pthread_broadcast, when
using "normal" mutexes.  With futex_requeue_pi, it can be used with
PRIO_INHERIT mutexes too.

Signed-off-by: Pierre Peiffer <pierre.peiffer@bull.net>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Ulrich Drepper <drepper@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/linux/futex.h
kernel/futex.c
kernel/futex_compat.c
kernel/rtmutex.c
kernel/rtmutex_common.h