| From: |
| Waiman Long <Waiman.Long-AT-hpe.com> |
| To: |
| Thomas Gleixner <tglx-AT-linutronix.de>, Ingo Molnar <mingo-AT-kernel.org>, Peter Zijlstra <peterz-AT-infradead.org>, Jonathan Corbet <corbet-AT-lwn.net> |
| Subject: |
| [RFC PATCH v2 0/5] futex: Introducing throughput-optimized futexes |
| Date: |
| Tue, 20 Sep 2016 09:42:38 -0400 |
| Message-ID: |
| <1474378963-15496-1-git-send-email-Waiman.Long@hpe.com> |
| Cc: |
| linux-kernel-AT-vger.kernel.org, linux-doc-AT-vger.kernel.org, Davidlohr Bueso <dave-AT-stgolabs.net>, Jason Low <jason.low2-AT-hpe.com>, Scott J Norton <scott.norton-AT-hpe.com>, Douglas Hatch <doug.hatch-AT-hpe.com>, Waiman Long <Waiman.Long-AT-hpe.com> |
v1->v2:
- Adds an explicit lock hand-off mechanism.
- Adds timeout support.
- Simplifies the required userspace code.
- Fixes a number of problems in the v1 code.
This patchset introduces a new futex implementation called
throughput-optimized (TO) futexes. It is similar to PI futexes in its
calling convention, but provides better throughput than the wait-wake
futexes by encouraging lock stealing and optimistic spinning.
Waiman Long (5):
futex: Add futex_set_timer() helper function
futex: Rename futex_pi_state to futex_state
futex: Throughput-optimized (TO) futexes
futex: Add timeout support to TO futexes
futex, doc: TO futexes document
Documentation/00-INDEX | 2 +
Documentation/to-futex.txt | 140 ++++++++
include/linux/sched.h | 4 +-
include/uapi/linux/futex.h | 4 +
kernel/futex.c | 810 +++++++++++++++++++++++++++++++++++++++-----
5 files changed, 869 insertions(+), 91 deletions(-)
create mode 100644 Documentation/to-futex.txt