On 19.11.23 17:57, Alexandru Elisei wrote:
To enable tagging on a memory range, userspace can use mprotect() with the
PROT_MTE access flag. Pages already mapped in the VMA don't have the
associated tag storage block reserved, so mark the PTEs as
PAGE_FAULT_ON_ACCESS to trigger a fault next time they are accessed, and
reserve the tag storage on the fault path.
That sounds alot like fake PROT_NONE. Would there be a way to unify hat
handling and simply reuse pte_protnone()? For example, could we special
case on VMA flags?
Like, don't do NUMA hinting in these special VMAs. Then, have something
like:
if (pte_protnone(vmf->orig_pte))
return handle_pte_protnone(vmf);