From mboxrd@z Thu Jan 1 00:00:00 1970 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 B0A34C98304 for ; Tue, 22 Sep 2026 06:17:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:Message-ID:Date:Subject:Cc:To:From:Reply-To:Content-Type: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=5gp8Yh1jKhlm2AtA4aufkbYryyrf9W2frZ666ZiSRMQ=; b=pc22/B8nVJr8GhWh8mnmUhbeTC W6BahG9TN44sH7FelyVsb3z17w/XZVNfiti8j2ejqZlMBVSzC922UUSuu3GOB6ZolCPGu5K+fg/Oa 4xMn2Nbai9SCYm7LEYF08Bi1VjdpkyIZCYJlX1NEK5iNCOPSDucjzcBiVorV5EouUJnC8pfFyTX9p HOJdgG41CG3gsRzxwWzR4xBJZpZYELyvoDvtY4B3oowPledb9/2ERiyn81FOUsVO+nNwNECU7v3L4 Tg9NW0Qh4OvJg0+Z1ragwhLyQSi21Ski6VPc6iGQzyvdFdGqDhCU5bO2LDNZC3U/GZ4r03aTQy18t eczyLlyA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1x8toD-00000004JsQ-1ueR; Tue, 22 Sep 2026 06:16:53 +0000 Received: from foss.arm.com ([217.140.110.172]) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1x8to6-00000004JrK-0TPL for linux-arm-kernel@lists.infradead.org; Tue, 22 Sep 2026 06:16:48 +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 7329A152B; Mon, 21 Sep 2026 23:16:40 -0700 (PDT) Received: from localhost (a085714.arm.com [10.164.19.28]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 3FB443F632; Mon, 21 Sep 2026 23:16:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=arm.com; s=foss; t=1790057804; bh=JzDwOfDq7AeFzF7O9lfDqkWJ63pkoijMhPDQ15y0zR8=; h=From:To:Cc:Subject:Date:From; b=DYnorSFwJzWKUOVKOfEXAceBAus9Bn2Z7oVKCObx1wayxTnPlfu9RildUNRHGYZI2 GfTIdzLh0OKkjWBKNKgO+GpYNmt8es67/ZVKRBSfjMTGEjHWaBAUYyFDyHINRxuWsY nuobtJnML9vTkixRBIpBD6WwQlhi8hl7NNTLdtno= From: Anshuman Khandual To: linux-arm-kernel@lists.infradead.org Cc: Anshuman Khandual , Catalin Marinas , Will Deacon , Ryan Roberts , Mark Rutland , Lorenzo Stoakes , Andrew Morton , David Hildenbrand , Mike Rapoport , Linu Cherian , linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: [PATCH V2 0/4] arm64/mm: Convert pgtable READ_ONCE() as pxdp_get() Date: Tue, 22 Sep 2026 11:46:34 +0530 Message-ID: <20260922061638.3967467-1-anshuman.khandual@arm.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260921_231646_341782_E4D758E4 X-CRM114-Status: GOOD ( 13.07 ) 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 Route READ_ONCE() accesses on pgtable entries via level specific generic MM pxdp_get() helpers which platforms could then override when required. These accessors on arm64, will help in ensuring page table accesses are performed in an atomic manner while reading 128 bit page table entries later. But for now they just default to READ_ONCE(), thus preserving existing behaviour on current D64 translation a well. This is similar to generic MM where all atomic accesses have already been converted from READ_ONCE() into pgtable level specific accessors. These are preparatory patches for D128 enablement, although standing their own for D64 translation as well. These patches are split from earlier D128 V1 series. There are no functional changes here and besides mm kselftests do not show any regression. https://lore.kernel.org/linux-mm/20260729122452.3797443-1-anshuman.khandual@arm.com/ This series applies on v7.3-rc4 but after applying the following patches on pgtable entry print standardization posted earlier. https://lore.kernel.org/linux-mm/20260831054331.625505-1-anshuman.khandual@arm.com/ https://lore.kernel.org/linux-mm/20260916044933.2689426-1-anshuman.khandual@arm.com/ These patches have been hosted here as well. git@git.gitlab.arm.com:linux-arm/linux-anshuman.git (arm64_pxdp_get_v2) Changes in V2: - Rebased on v7.3-rc4 along with all latest dependencies - Updated commit messages per Ryan - Added tag from Ryan Changes in V1: https://lore.kernel.org/all/20260903060657.2717457-1-anshuman.khandual@arm.com/ Cc: Catalin Marinas Cc: Will Deacon Cc: Ryan Roberts Cc: Mark Rutland Cc: Lorenzo Stoakes Cc: Andrew Morton Cc: David Hildenbrand Cc: Mike Rapoport Cc: Linu Cherian Cc: linux-arm-kernel@lists.infradead.org Cc: linux-kernel@vger.kernel.org Cc: linux-mm@kvack.org Anshuman Khandual (4): arm64/mm: Use pmdp_get() for PMD accesses arm64/mm: Use pudp_get() for PUD accesses arm64/mm: Use p4dp_get() for P4D accesses arm64/mm: Use pgdp_get() for PGD accesses arch/arm64/include/asm/pgtable.h | 6 ++-- arch/arm64/mm/fault.c | 8 ++--- arch/arm64/mm/fixmap.c | 6 ++-- arch/arm64/mm/hugetlbpage.c | 10 +++--- arch/arm64/mm/kasan_init.c | 18 +++++----- arch/arm64/mm/mmu.c | 60 ++++++++++++++++---------------- arch/arm64/mm/pageattr.c | 8 ++--- arch/arm64/mm/trans_pgd.c | 14 ++++---- 8 files changed, 66 insertions(+), 64 deletions(-) -- 2.43.0