From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755077AbbITKMP (ORCPT ); Sun, 20 Sep 2015 06:12:15 -0400 Received: from smtp2.provo.novell.com ([137.65.250.81]:53233 "EHLO smtp2.provo.novell.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753969AbbITKMJ (ORCPT ); Sun, 20 Sep 2015 06:12:09 -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: Adopt relaxed barrier semantics Date: Sun, 20 Sep 2015 03:11:46 -0700 Message-Id: <1442743911-25366-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 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: Relax to atomic/release semantics locking/rtmutex: Relax to acquire/release semantics locking/rwsem: Relax to acquire/release semantics locking/mcs: Relax to atomic/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