vmm: some work towards page locking

This commit is contained in:
Matheus
2026-02-12 16:25:35 -03:00
parent 3e2a64be5d
commit b3d5bf5586
6 changed files with 56 additions and 7 deletions
+4 -1
View File
@@ -101,7 +101,10 @@ void vmm_unmap(void *addr, size_t size, int flags);
bool vmm_pagefault(void *addr, bool user, int actions);
vmmcontext_t *vmm_newcontext();
void vmm_switchcontext(vmmcontext_t *ctx);
void *vmm_getphysical(void *addr, bool hold);
#define VMM_GET_PHYSICAL_FLAGS_HOLD 1
#define VMM_GET_PHYSICAL_FLAGS_LOCK 2
void *vmm_getphysical(void *addr, int flags);
void vmm_apinit();
void vmm_init();
+2
View File
@@ -24,6 +24,8 @@
#define ARCH_MMU_FLAGS_UC (1 << 4)
#define ARCH_MMU_FLAGS_WC ((1 << 12) | (1 << 3)) // PAT5 (limine sets up the 5th PAT entry as WC)
#define PAGE_MASK 0xfffffffffffff000lu
#define ARCH_MMU_REQUIRED_FLAGS ARCH_MMU_FLAGS_READ
typedef uint64_t mmuflags_t;