Re: [PATCH 0/4] arm64/mm: Convert pgtable READ_ONCE() as pxdp_get()

From: David Hildenbrand (Arm)

Date: Mon Sep 21 2026 - 10:53:18 EST


On 9/3/26 08:06, Anshuman Khandual wrote:
> 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.
>
> 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@xxxxxxx/
>
> This series applies on v3.7-rc1 but after applying the following patches
> related to pgtable entry print standardization posted earlier.
>
> https://lore.kernel.org/linux-mm/20260831054331.625505-1-anshuman.khandual@xxxxxxx/
>
> https://lore.kernel.org/linux-mm/20260901065454.1906343-1-anshuman.khandual@xxxxxxx/
>
> Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
> Cc: Will Deacon <will@xxxxxxxxxx>
> Cc: Ryan Roberts <ryan.roberts@xxxxxxx>
> Cc: Mark Rutland <mark.rutland@xxxxxxx>
> Cc: Lorenzo Stoakes <ljs@xxxxxxxxxx>
> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> Cc: David Hildenbrand <david@xxxxxxxxxx>
> Cc: Mike Rapoport <rppt@xxxxxxxxxx>
> Cc: Linu Cherian <linu.cherian@xxxxxxx>
> Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
> Cc: linux-kernel@xxxxxxxxxxxxxxx
> Cc: linux-mm@xxxxxxxxx
>
> Anshuman Khandual (4):
> arm64/mm: Convert READ_ONCE() as pmdp_get() while accessing PMD
> arm64/mm: Convert READ_ONCE() as pudp_get() while accessing PUD
> arm64/mm: Convert READ_ONCE() as p4dp_get() while accessing P4D
> arm64/mm: Convert READ_ONCE() as pgdp_get() while accessing PGD
>
> 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(-)
Skimmed the changes, purely mechanical changes, so looks good.

Consider spelling out in the patches "No functional change intended."

--
Cheers,

David