Re: [PATCH 2/3] arm64: pageattr: Use walk_page_range_novma() to change memory permissions

From: Dev Jain
Date: Mon Jun 09 2025 - 05:42:59 EST



On 06/06/25 3:19 pm, Lorenzo Stoakes wrote:
On Fri, May 30, 2025 at 02:34:06PM +0530, Dev Jain wrote:
Move away from apply_to_page_range(), which does not honour leaf mappings,
to walk_page_range_novma(). The callbacks emit a warning and return EINVAL
if a partial range is detected.
Hm a follow up question here - why not just improve apply_to_page_range() to
honour leaf mappings?

What does honouring leaf mappings actually mean? You mean handling huge pages?

Would it be all that difficult to implement?

It seems like you're pushing a bunch of the 'applying' logic over from there to
a walker that isn't maybe best suited to it and having to introduce an iffy new
form of locking...

Can we go vice-versa? :)

Also obviously walk_page_range_novma() doesn't exist any more :P
walk_kernel_page_table_range() is the preferred solution.

I cannot see this function in mm-unstable. Also, mm-unstable is broken - I get
some RCU message in dmesg, and after some 20-30 second delay the kernel boots.
So on which branch do I base my work on...