1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-23 18:15:06 +00:00

Kernel: Clean up ensure_pte()

This commit is contained in:
Andreas Kling 2020-01-17 20:57:32 +01:00
parent e362b56b4f
commit ba8275a48e

View file

@ -234,9 +234,6 @@ PageTableEntry& MemoryManager::ensure_pte(PageDirectory& page_directory, Virtual
#ifdef MM_DEBUG
dbgprintf("MM: PDE %u not present (requested for V%p), allocating\n", page_directory_index, vaddr.get());
#endif
if (page_directory_table_index == 3 && page_directory_index < 4) {
ASSERT_NOT_REACHED();
} else {
auto page_table = allocate_supervisor_physical_page();
#ifdef MM_DEBUG
dbgprintf("MM: PD K%p (%s) at P%p allocated page table #%u (for V%p) at P%p\n",
@ -254,14 +251,8 @@ PageTableEntry& MemoryManager::ensure_pte(PageDirectory& page_directory, Virtual
pde.set_global(&page_directory == m_kernel_page_directory.ptr());
page_directory.m_physical_pages.set(page_directory_index, move(page_table));
}
}
//if (&page_directory != &kernel_page_directory() && page_directory_table_index != 3) {
return quickmap_pt(PhysicalAddress((u32)pde.page_table_base()))[page_table_index];
//}
auto* phys_ptr = &pde.page_table_base()[page_table_index];
return *(PageTableEntry*)((u8*)phys_ptr + 0xc0000000);
}
void MemoryManager::map_protected(VirtualAddress vaddr, size_t length)