From 31aa84528af5a92c3019e6abaa949eb20a4e73d9 Mon Sep 17 00:00:00 2001 From: Ian Moffett Date: Thu, 29 Feb 2024 21:55:23 -0500 Subject: kernel/amd64: pmap: Add routine to switch vas Signed-off-by: Ian Moffett --- sys/arch/amd64/amd64/pmap.c | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'sys/arch/amd64') diff --git a/sys/arch/amd64/amd64/pmap.c b/sys/arch/amd64/amd64/pmap.c index 5fe1e3b..e898e74 100644 --- a/sys/arch/amd64/amd64/pmap.c +++ b/sys/arch/amd64/amd64/pmap.c @@ -215,6 +215,17 @@ pmap_create_vas(struct vm_ctx *ctx) return new_vas; } +void +pmap_switch_vas(struct vm_ctx *ctx, struct vas vas) +{ + uintptr_t cr3_val = vas.cr3_flags | vas.top_level; + + __ASMV("mov %0, %%cr3" + : + : "r" (cr3_val) + : "memory"); +} + struct vas pmap_read_vas(void) { -- cgit v1.2.3