VMM - touch_page adds P2 and P1

This commit is contained in:
2017-12-27 23:18:01 +01:00
parent 1d4b689215
commit 86d8aea9ea
2 changed files with 19 additions and 5 deletions

View File

@@ -55,7 +55,11 @@ int touch_page(void *P4, uintptr_t addr, uint16_t flags)
(void)flags;
if(!P4) return -1;
if(!P4e(P4, addr).present)
P4e(P4, addr).value = pmm_alloc();
P4e(P4, addr).value = pmm_alloc() | flags | PAGE_PRESENT;
if(!P3e(P4, addr).present)
P3e(P4, addr).value = pmm_alloc() | flags | PAGE_PRESENT;
if(!P2e(P4, addr).present)
P2e(P4, addr).value = pmm_alloc() | flags | PAGE_PRESENT;
return 0;
}