[PATCH 0/5] locking: Use acquire/release semantics

From: Davidlohr Bueso
Date: Mon Sep 21 2015 - 16:18:20 EST


Changes from v2:
o Rename patch titles (per Linus), slight changelog
rephrasing.

Hi,

This series continues porting users to Will's new _{acquire|release|relaxed}
optimizations for weakly ordered archs -- and in practice, arm64 being the only
actual user we have, thus could use a _lot_ more testing. While we have osq in
-tip recently, along with Waiman's one for native qspinlock, the following
patches pretty much complete the move over for all things kernel/locking/*.
Of course, particular primitives can be found in the obvious patch titles. Note
that patch 1 adds the necessary machinery to fully support some locks, such as
rwsems.

Compiles on x86 and x86-64.

Thanks!

Davidlohr Bueso (5):
asm-generic: Add _{relaxed|acquire|release}() variants for inc/dec
atomics
locking/mutex: Use acquire/release semantics
locking/rtmutex: Use acquire/release semantics
locking/rwsem: Use acquire/release semantics
locking/mcs: Use acquire/release semantics

include/asm-generic/atomic-long.h | 29 +++++++-----
include/asm-generic/mutex-dec.h | 8 ++--
include/asm-generic/mutex-xchg.h | 10 ++--
include/asm-generic/rwsem.h | 14 +++---
include/linux/atomic.h | 97 +++++++++++++++++++++++++++++++++++++++
kernel/locking/mcs_spinlock.h | 4 +-
kernel/locking/mutex.c | 9 ++--
kernel/locking/rtmutex.c | 30 ++++++++----
kernel/locking/rwsem-xadd.c | 5 +-
9 files changed, 161 insertions(+), 45 deletions(-)

--
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/