From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757345AbbIUUSQ (ORCPT ); Mon, 21 Sep 2015 16:18:16 -0400 Received: from smtp2.provo.novell.com ([137.65.250.81]:55909 "EHLO smtp2.provo.novell.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754685AbbIUUSP (ORCPT ); Mon, 21 Sep 2015 16:18:15 -0400 From: Davidlohr Bueso To: Peter Zijlstra , Ingo Molnar , Thomas Gleixner Cc: Andrew Morton , Linus Torvalds , Will Deacon , "Paul E. McKenney" , Davidlohr Bueso , linux-kernel@vger.kernel.org Subject: [PATCH 0/5] locking: Use acquire/release semantics Date: Mon, 21 Sep 2015 13:17:51 -0700 Message-Id: <1442866676-10359-1-git-send-email-dave@stgolabs.net> X-Mailer: git-send-email 2.1.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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