Re: [PATCH v2 1/3] arm64: mm: Fix rodata=full block mapping support for realm guests
From: Yang Shi
Date: Thu Apr 09 2026 - 19:08:45 EST
On 4/9/26 11:33 AM, Catalin Marinas wrote:
On Thu, Apr 09, 2026 at 09:48:58AM -0700, Yang Shi wrote:
On 4/9/26 8:20 AM, Catalin Marinas wrote:Yes, it's secretmem only AFAICT. I think execmem will only change the
On Thu, Apr 09, 2026 at 11:53:41AM +0200, Kevin Brodsky wrote:I'm trying to wrap up my head for this discussion. IIUC, if none of the
What would make more sense to me is to enable the use of BBML2-noabortIndeed.
unconditionally if !force_pte_mapping(). We can then have
can_set_direct_map() return true if we have BBML2-noabort, and we no
longer need to check it in map_mem().
features is enabled, it means we don't need do anything because the direct
map is not changed. For example, if vmalloc doesn't change direct map
permission when rodata != full, there is no need to call
set_direct_map_*_noflush(). So unconditionally checking BBML2_NOABORT will
change the behavior unnecessarily. Did I miss something?
I think the only exception is secretmem if I don't miss something.
Currently, secretmem is actually not supported if none of the features is
enabled. But BBML2_NOABORT allows to lift the restriction.
linear map if rodata_full anyway.
Yes, execmem calls set_memory_rox(), which won't change linear map permission if rodata_full is not enabled.
Thanks,
Yang