From: sashiko-bot@kernel.org
To: "Lorenzo Stoakes (ARM)" <ljs@kernel.org>
Cc: "Vasily Gorbik" <gor@linux.ibm.com>,
linux-s390@vger.kernel.org,
"Alexander Gordeev" <agordeev@linux.ibm.com>,
"Christian Borntraeger" <borntraeger@linux.ibm.com>,
"Heiko Carstens" <hca@linux.ibm.com>
Subject: Re: [PATCH 04/12] mm: enable MMU_GATHER_RCU_TABLE_FREE for MMU arm
Date: Tue, 01 Sep 2026 11:18:16 +0000 [thread overview]
Message-ID: <20260901111817.592C11F000E9@smtp.kernel.org> (raw)
In-Reply-To: <20260901-rcu-pagetable-freeing-v1-4-5456a81c8212@kernel.org>
> Commit a0ad5496b2b3 ("arm: mm: enable HAVE_RCU_TABLE_FREE logic") enabled
> CONFIG_MMU_GATHER_RCU_TABLE_FREE (then named HAVE_RCU_TABLE_FREE) for SMP
> arm architectures with LPAE enabled.
>
> Regardless of whether CONFIG_ARM_LPAE is enabled or not, the same page
> table freeing functions __pte_free_tlb() and __pmd_free_tlb() are used.
>
> Non-LPAE PMD page tables are folded into the PGD and freed by
> pgd_free() (PGD freeing is not part of mmu_gather page table freeing in any
> case), so this is a noop in this case.
>
> Since commit 358d1c39c82a ("arm: convert various functions to use ptdescs")
> both LPAE and non-LPAE PTE page table freeing uses tlb_remove_ptdesc().
>
> Thus all page table freeing is performed under RCU with
> CONFIG_MMU_GATHER_RCU_TABLE_FREE enabled for LPAE and non-LPAE and thus it
> need not be gated on LPAE.
>
> A UP arm system can set CONFIG_PREEMPT_RCU, so a future pure RCU page
> table walker requires MMU_GATHER_RCU_TABLE_FREE to be enabled on UP as
> well, even if concurrent GUP fast is not possible there.
>
> Therefore, it is both safe and desirable to set
> CONFIG_MMU_GATHER_RCU_TABLE_FREE for all MMU arm architectures (nommu does
> not perform mmu_gather operations).
>
> This forms part of an overall effort to switch every architecture to this
> mode.
>
> Signed-off-by: Lorenzo Stoakes (ARM) <ljs@kernel.org>
Sashiko has reviewed this patch and found no issues. It looks great!
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260901-rcu-pagetable-freeing-v1-0-5456a81c8212@kernel.org?part=4
next prev parent reply other threads:[~2026-09-01 11:18 UTC|newest]
Thread overview: 117+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-01 11:01 [PATCH 00/12] mm: make userland page table freeing RCU-safe Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` [PATCH 01/12] mm/huge_memory: zap deposited page tables after an RCU grace period Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:18 ` sashiko-bot
2026-09-01 13:19 ` Kiryl Shutsemau
2026-09-01 13:19 ` Kiryl Shutsemau
2026-09-01 13:19 ` Kiryl Shutsemau
2026-09-01 14:12 ` Lorenzo Stoakes (ARM)
2026-09-01 14:12 ` Lorenzo Stoakes (ARM)
2026-09-01 14:12 ` Lorenzo Stoakes (ARM)
2026-09-01 14:24 ` Jason Gunthorpe
2026-09-01 14:24 ` Jason Gunthorpe
2026-09-01 14:24 ` Jason Gunthorpe
2026-09-01 14:41 ` Lorenzo Stoakes (ARM)
2026-09-01 14:41 ` Lorenzo Stoakes (ARM)
2026-09-01 14:41 ` Lorenzo Stoakes (ARM)
2026-09-01 15:28 ` Kiryl Shutsemau
2026-09-01 15:28 ` Kiryl Shutsemau
2026-09-01 15:28 ` Kiryl Shutsemau
2026-09-01 15:45 ` Lorenzo Stoakes (ARM)
2026-09-01 15:45 ` Lorenzo Stoakes (ARM)
2026-09-01 15:45 ` Lorenzo Stoakes (ARM)
2026-09-01 17:11 ` Kiryl Shutsemau
2026-09-01 17:11 ` Kiryl Shutsemau
2026-09-01 17:11 ` Kiryl Shutsemau
2026-09-01 17:14 ` Lorenzo Stoakes (ARM)
2026-09-01 17:14 ` Lorenzo Stoakes (ARM)
2026-09-01 17:14 ` Lorenzo Stoakes (ARM)
2026-09-01 15:54 ` Liam R. Howlett
2026-09-01 15:54 ` Liam R. Howlett
2026-09-01 15:54 ` Liam R. Howlett
2026-09-01 16:06 ` Jason Gunthorpe
2026-09-01 16:06 ` Jason Gunthorpe
2026-09-01 16:06 ` Jason Gunthorpe
2026-09-01 17:13 ` Kiryl Shutsemau
2026-09-01 17:13 ` Kiryl Shutsemau
2026-09-01 17:13 ` Kiryl Shutsemau
2026-09-01 17:47 ` Liam R. Howlett
2026-09-01 17:47 ` Liam R. Howlett
2026-09-01 17:47 ` Liam R. Howlett
2026-09-01 11:01 ` [PATCH 02/12] mm: enable MMU_GATHER_RCU_TABLE_FREE for most 2-level architectures Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:22 ` sashiko-bot
2026-09-01 11:01 ` [PATCH 03/12] mm: enable MMU_GATHER_RCU_TABLE_FREE for MMU riscv Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:14 ` sashiko-bot
2026-09-01 11:01 ` [PATCH 04/12] mm: enable MMU_GATHER_RCU_TABLE_FREE for MMU arm Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:18 ` sashiko-bot [this message]
2026-09-01 11:01 ` [PATCH 05/12] mm: enable MMU_GATHER_RCU_TABLE_FREE for arc, microblaze, xtensa Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:28 ` sashiko-bot
2026-09-07 21:07 ` Suren Baghdasaryan
2026-09-07 21:07 ` Suren Baghdasaryan
2026-09-07 21:07 ` Suren Baghdasaryan
2026-09-08 11:28 ` Lorenzo Stoakes (ARM)
2026-09-08 11:28 ` Lorenzo Stoakes (ARM)
2026-09-08 11:28 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` [PATCH 06/12] mm: enable MMU_GATHER_RCU_TABLE_FREE for sparc64 Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:23 ` sashiko-bot
2026-09-01 11:01 ` [PATCH 07/12] mm: enable MMU_GATHER_RCU_TABLE_FREE for m68k-coldfire Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:23 ` sashiko-bot
2026-09-01 11:01 ` [PATCH 08/12] mm: enable MMU_GATHER_RCU_TABLE_FREE for sh-X2 Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:30 ` sashiko-bot
2026-09-01 11:01 ` [PATCH 09/12] mm: enable MMU_GATHER_RCU_TABLE_FREE for m68k-motorola Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:30 ` sashiko-bot
2026-09-01 11:01 ` [PATCH 10/12] mm: enable MMU_GATHER_RCU_TABLE_FREE for sparc32 Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:37 ` sashiko-bot
2026-09-01 11:01 ` [PATCH 11/12] mm: make userland page table freeing RCU-safe Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:52 ` sashiko-bot
2026-09-01 13:33 ` Kiryl Shutsemau
2026-09-01 13:33 ` Kiryl Shutsemau
2026-09-01 13:33 ` Kiryl Shutsemau
2026-09-01 14:03 ` Lorenzo Stoakes (ARM)
2026-09-01 14:03 ` Lorenzo Stoakes (ARM)
2026-09-01 14:03 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` [PATCH 12/12] mm: change the contract for free_pgtables(), update docs Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:01 ` Lorenzo Stoakes (ARM)
2026-09-01 11:37 ` sashiko-bot
2026-09-01 13:57 ` Kiryl Shutsemau
2026-09-01 13:57 ` Kiryl Shutsemau
2026-09-01 13:57 ` Kiryl Shutsemau
2026-09-01 14:31 ` Lorenzo Stoakes (ARM)
2026-09-01 14:31 ` Lorenzo Stoakes (ARM)
2026-09-01 14:31 ` Lorenzo Stoakes (ARM)
2026-09-01 17:15 ` Kiryl Shutsemau
2026-09-01 17:15 ` Kiryl Shutsemau
2026-09-01 17:15 ` Kiryl Shutsemau
2026-09-01 17:25 ` Lorenzo Stoakes (ARM)
2026-09-01 17:25 ` Lorenzo Stoakes (ARM)
2026-09-01 17:25 ` Lorenzo Stoakes (ARM)
2026-09-07 16:53 ` Suren Baghdasaryan
2026-09-07 16:53 ` Suren Baghdasaryan
2026-09-07 16:53 ` Suren Baghdasaryan
2026-09-08 11:29 ` Lorenzo Stoakes (ARM)
2026-09-08 11:29 ` Lorenzo Stoakes (ARM)
2026-09-08 11:29 ` Lorenzo Stoakes (ARM)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260901111817.592C11F000E9@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=agordeev@linux.ibm.com \
--cc=borntraeger@linux.ibm.com \
--cc=gor@linux.ibm.com \
--cc=hca@linux.ibm.com \
--cc=linux-s390@vger.kernel.org \
--cc=ljs@kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.