From patchwork Fri Jan 5 01:48:32 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: dann frazier X-Patchwork-Id: 855891 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) by ozlabs.org (Postfix) with ESMTP id 3zCSLy2Jjqz9s7f; Fri, 5 Jan 2018 12:51:22 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1eXHA8-0004Rp-JV; Fri, 05 Jan 2018 01:51:12 +0000 Received: from complete.lackof.org ([198.49.126.79]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1eXHA5-0004QM-Kt for kernel-team@lists.ubuntu.com; Fri, 05 Jan 2018 01:51:09 +0000 Received: from localhost (c-73-217-118-12.hsd1.co.comcast.net [73.217.118.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by complete.lackof.org (Postfix) with ESMTPSA id 2581933E002C for ; Thu, 4 Jan 2018 18:51:07 -0700 (MST) From: dann frazier To: kernel-team@lists.ubuntu.com Subject: [PATCH 0/5][Bionic][SRU Artful] Switch arm64 over to qrwlock Date: Thu, 4 Jan 2018 18:48:32 -0700 Message-Id: <20180105014837.23600-1-dann.frazier@canonical.com> X-Mailer: git-send-email 2.15.1 X-Virus-Scanned: clamav-milter 0.99.2 at complete.lackof.org X-Virus-Status: Clean X-Spam-Status: No, score=0.2 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, UNPARSEABLE_RELAY autolearn=no autolearn_force=no version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on complete.lackof.org X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" BugLink: http://bugs.launchpad.net/bugs/1732238 These patches comprise all clean cherry picks that landed in the 4.15 merge window. Verified on a ThunderX2-based Sabre board, and regression tested on a 128-cpu x86 system using stress-ng and locktorture. (The other Ubuntu architectures don't use qrwlocks). Will Deacon (5): locking/qrwlock: Use 'struct qrwlock' instead of 'struct __qrwlock' locking/atomic: Add atomic_cond_read_acquire() locking/qrwlock: Use atomic_cond_read_acquire() when spinning in qrwlock locking/qrwlock, arm64: Move rwlock implementation over to qrwlocks locking/qrwlock: Prevent slowpath writers getting held up by fastpath arch/arm64/Kconfig | 17 ++++ arch/arm64/include/asm/Kbuild | 1 + arch/arm64/include/asm/spinlock.h | 164 +------------------------------- arch/arm64/include/asm/spinlock_types.h | 6 +- include/asm-generic/atomic-long.h | 3 + include/asm-generic/qrwlock.h | 37 ++----- include/asm-generic/qrwlock_types.h | 15 ++- include/linux/atomic.h | 4 + kernel/locking/qrwlock.c | 86 +++-------------- 9 files changed, 61 insertions(+), 272 deletions(-) Acked-by: Seth Forshee Acked-by: Marcelo Henrique Cerri Acked-by: Paolo Pisati