:: commit 3b9d29385cf69a7ef81c90cb5efd5f94a0bee2ff

mintsuki <mintsuki@protonmail.com> — 2023-06-15 06:21

parents: aa926e7a6b

vmm: Fix page_sizes values and move declaration to top

diff --git a/common/mm/vmm.c b/common/mm/vmm.c
index 670a0544..4578bbeb 100644
--- a/common/mm/vmm.c
+++ b/common/mm/vmm.c
@@ -10,7 +10,16 @@
 
 typedef uint64_t pt_entry_t;
 
-static uint64_t page_sizes[5];
+// Maps level indexes to the page size for that level.
+_Static_assert(VMM_MAX_LEVEL <= 5, "6-level paging not supported");
+static uint64_t page_sizes[5] = {
+    0x1000,
+    0x200000,
+    0x40000000,
+    0x8000000000,
+    0x1000000000000,
+};
+
 static pt_entry_t *get_next_level(pagemap_t pagemap, pt_entry_t *current_level,
                                   uint64_t virt, enum page_size desired_sz,
                                   size_t level_idx, size_t entry);
@@ -232,16 +241,6 @@ level4:
 #error Unknown architecture
 #endif
 
-// Maps level indexes to the page size for that level.
-_Static_assert(VMM_MAX_LEVEL <= 5, "6-level paging not supported");
-static uint64_t page_sizes[5] = {
-    0x1000,
-    0x200000,
-    0x40000000,
-    0x800000000000,
-    0x100000000000000,
-};
-
 static pt_entry_t *get_next_level(pagemap_t pagemap, pt_entry_t *current_level,
                                   uint64_t virt, enum page_size desired_sz,
                                   size_t level_idx, size_t entry) {
tab: 248 wrap: offon