From patchwork Tue Mar 14 15:36:56 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mark Rutland X-Patchwork-Id: 13174660 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 12CC1C6FD1F for ; Tue, 14 Mar 2023 15:38:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=3uCrdIvsXrj+zub52sMZiyT6RDmk76qT+aHiZl+f7g4=; b=g0TposbW3MwGI8 zR4iVkWykb2iRfYoacf4QSUhHLrK9Xq3XdaMsMgUac+iq1+SEgi4hJQaO8qwpZTQI4G2k9vdVeoAh Gw5r3bXclMGRIXP0ctdqLpmGGDyAGiPeRm4knu55UXnaup8H7TVFYRiuoZd9l85GFMn2wEtO1RHdr 4zPoJY6gEfRUP2tMn1B1e+4vxS1kEy4Lhgcs72K8p0qPZ6WzW+NWbX/nRamDcLiN4kTicmuY9DNyw XL9c7KePLMwFwfbVYaAaMNH98WEL1Z3vMJRjUIkFPv0O3GHWV7NgmAwmR2nVgq/iF3ZystiNa3qUo u4o7z0MBbzbUkaf5zEjQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1pc6i9-00AdPu-1F; Tue, 14 Mar 2023 15:37:13 +0000 Received: from foss.arm.com ([217.140.110.172]) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1pc6i6-00AdOA-0M for linux-arm-kernel@lists.infradead.org; Tue, 14 Mar 2023 15:37:11 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 3C29A4B3; Tue, 14 Mar 2023 08:37:51 -0700 (PDT) Received: from lakrids.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id A0F043F67D; Tue, 14 Mar 2023 08:37:06 -0700 (PDT) From: Mark Rutland To: linux-arm-kernel@lists.infradead.org Cc: catalin.marinas@arm.com, mark.rutland@arm.com, peterz@infradead.org, robin.murphy@arm.com, will@kernel.org Subject: [PATCH v2 0/4] arm64: asm improvements Date: Tue, 14 Mar 2023 15:36:56 +0000 Message-Id: <20230314153700.787701-1-mark.rutland@arm.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230314_083710_200000_48C04241 X-CRM114-Status: UNSURE ( 7.08 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org This series contains a few minor asm cleanups/improvements I've collected since the last cycle, one of which was previously posted on its own [1], hence sending as a v2. Largely, this is simplifying/relaxing constraints to allow for better code generation. The cmpxchg patch also drops some C code that's made redundant with the relaxed constraints. Since v1: * Accumulate uaccess asm patches * lse/cmpxchg: allow use of [WX]ZR for 'new' * lse/cmpxchg: cleanup commit message [1] https://lore.kernel.org/linux-arm-kernel/20230206115852.265006-1-mark.rutland@arm.com/ I've given these basic boot testing atop v6.3-rc2 under QEMU TCG mode. Thanks, Mark. Mark Rutland (4): arm64: atomics: lse: improve cmpxchg implementation arm64: uaccess: permit __smp_store_release() to use zero register arm64: uaccess: permit put_{user,kernel} to use zero register arm64: uaccess: remove unnecessary earlyclobber arch/arm64/include/asm/atomic_lse.h | 17 +++++------------ arch/arm64/include/asm/barrier.h | 10 +++++----- arch/arm64/include/asm/uaccess.h | 4 ++-- 3 files changed, 12 insertions(+), 19 deletions(-)