[RFC patch 0/7] futex: Add support for attached futexes

From: Thomas Gleixner
Date: Sat Apr 02 2016 - 07:11:07 EST


The standard futex mechanism in the Linux kernel uses a global hash to store
transient state. Collisions on that hash can lead to performance degradation
and on real-time enabled kernels to unbound priority inversions.

To guarantee futexes without collisions on the global kernel hash, we provide
a mechanism to attach to a futex. This creates futex private state which
avoids hash collisions and on NUMA systems also cross node memory accesses.

The full explanation of the mechanism is in the changelog of
patch 4/7 'futex: Add support for attached futexes'.

The last two patches in the series contain a first update to the futex man
page and initial glibc support.

For your conveniance the kernel part is available at:

git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git WIP.futex

Thanks,

tglx