Thread (24 messages) flat view 24 messages, 4 authors, 13d ago

Re: [PATCH v7 1/3] mm: make persistent huge zero folio read-only

From: "David Hildenbrand (Arm)" <david@kernel.org>
Date: 2026-09-07 14:48:22
Also in: linux-mm, lkml

On 9/7/26 16:36, Mike Rapoport wrote:
On Mon, Sep 07, 2026 at 01:18:42PM +0200, David Hildenbrand (Arm) wrote:
quoted
On 9/7/26 08:03, Mike Rapoport wrote:
quoted
Hi Xueyuan,


And I believe this is an historical artifact rather than necessity. For
configurations that allow set_direct_map on arm64, change_memory_common can
update direct map too, it just need to be implemented there.
Are we sure the other architectures do what we want in their set_memory_ro?
It's a zoo right now :(
Yeah, that's why I'm asking :)
Although most of them do.

But we need to sort it out anyway because of increasingly growing demand
for modifications of the kernel page tables.
The question really is whether we want to use a single interface for all page
tables.

I quite like a page-based directmap interface. Other page table areas are not
necessarily page-based. It also expresses which types of operations we expect on
the direct map.

One could, of course, use set_memory_ro() internally to implement
set_direct_map_ro() (and similarly for other variants); but at least
set_direct_map_*() would have clear, well documented semantics.
I started something here:
https://lore.kernel.org/linux-mm/20260721-generic-set-memory-v0-1-v1-0-2c1fc62306b3@kernel.org/ (local)

Now that x86 CPA is nearly fixed, I can look into the next iteration.
quoted
Having a dedicated set_direct_map_ro() with clear (documented ;)) semantics does
not sound too crazy to me.
It's not too crazy, no.

Still making arm64 more aligned with x86 and other arches that update the
direct/linear map in the set_memory_ro() seem a good thing on it's own.
Right, but I'd much rather user set_memory_ro() later to implement
set_direct_map_ro() [initially on architectures where we made sure that it
actually does what we expect? later maybe generically]

-- 
Cheers,

David
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help