From cf52909d11fba4e81e77f264abe1f7055399793a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matteo=20Gm=C3=BCr?= Date: Wed, 23 Oct 2024 13:55:23 +0000 Subject: Revert "Initalize page table on first call" This reverts commit 355993d16fcdb2d020d6f1ff02adfa191f8f4d48. --- arch/x86_64/src/memory/paging/page_mapper.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'arch/x86_64/src/memory') diff --git a/arch/x86_64/src/memory/paging/page_mapper.cpp b/arch/x86_64/src/memory/paging/page_mapper.cpp index 39b5e64..995f2c3 100644 --- a/arch/x86_64/src/memory/paging/page_mapper.cpp +++ b/arch/x86_64/src/memory/paging/page_mapper.cpp @@ -4,11 +4,15 @@ namespace teachos::arch::memory::paging { + namespace + { + static page_table * PAGE_TABLE_LEVEL_4_ADDRESS = boot::page_map_level_4; + } // namespace + auto create_or_get() -> page_table_handle { - static page_table * table = boot::page_map_level_4; // We can not save page_table_handle as a static variable directly, if we do the program will fail to link. - return page_table_handle{table, page_table_handle::LEVEL4}; + return page_table_handle{PAGE_TABLE_LEVEL_4_ADDRESS, page_table_handle::LEVEL4}; } auto translate_page(virtual_page page) -> std::optional -- cgit v1.2.3