aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Turner <andrew@FreeBSD.org>2026-05-18 09:01:19 +0000
committerAndrew Turner <andrew@FreeBSD.org>2026-05-27 15:22:25 +0000
commitd63a62fb3504df36457cac5718073a12d10e6cdc (patch)
tree3e6cc65d71f54fbad2ad67473bd606feeac435db
parent5cb511e62763621cf7672db4294002411c3e897d (diff)
arm64: Add support for per-page flags
We need to store some extra information about a page, e.g. the state of the MTE tags. Add a MD flags field to each page. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55953
-rw-r--r--sys/arm64/arm64/pmap.c1
-rw-r--r--sys/arm64/include/pmap.h3
2 files changed, 3 insertions, 1 deletions
diff --git a/sys/arm64/arm64/pmap.c b/sys/arm64/arm64/pmap.c
index fd4232711697..0aa1ee8d5801 100644
--- a/sys/arm64/arm64/pmap.c
+++ b/sys/arm64/arm64/pmap.c
@@ -1587,6 +1587,7 @@ pmap_page_init(vm_page_t m)
TAILQ_INIT(&m->md.pv_list);
m->md.pv_memattr = VM_MEMATTR_WRITE_BACK;
+ m->md.pv_flags = 0;
}
static void
diff --git a/sys/arm64/include/pmap.h b/sys/arm64/include/pmap.h
index 1d90e8d472f2..69ae8e5c80b7 100644
--- a/sys/arm64/include/pmap.h
+++ b/sys/arm64/include/pmap.h
@@ -70,7 +70,8 @@ struct md_page {
TAILQ_HEAD(,pv_entry) pv_list;
int pv_gen;
vm_memattr_t pv_memattr;
- uint8_t pv_reserve[3];
+ uint8_t pv_flags;
+ uint8_t pv_reserve[2];
};
enum pmap_stage {