Resolved page faults from user stacks

This commit is contained in:
Drew Galbraith 2023-06-12 23:28:23 -07:00
parent 6c13fdc801
commit 72885190e9
3 changed files with 19 additions and 0 deletions

View file

@ -55,6 +55,11 @@ bool AddressSpace::HandlePageFault(uint64_t vaddr) {
#if K_VMAS_DEBUG
dbgln("[VMAS] Page Fault!");
#endif
if (user_stacks_.IsValidStack(vaddr)) {
MapPage(cr3_, vaddr, phys_mem::AllocatePage());
return true;
}
MemoryMapping* mapping = GetMemoryMappingForAddr(vaddr);
if (mapping == nullptr) {
return false;