fixes and refinements
[lunaix-os.git] / lunaix-os / kernel / mm / pmm.c
index c6b0a25b7dd77cf39fa8f7fd8aa113b52c45a0c8..47087fdd3dad383b518d547137e9a1a68162f67e 100644 (file)
@@ -17,6 +17,8 @@ uint8_t pm_bitmap[PM_BMP_MAX_SIZE];
 
 uintptr_t max_pg;
 
 
 uintptr_t max_pg;
 
+//  ... |xxxx xxxx |
+//  ... |-->|
 void
 pmm_mark_page_free(uintptr_t ppn)
 {
 void
 pmm_mark_page_free(uintptr_t ppn)
 {
@@ -77,7 +79,7 @@ size_t pg_lookup_ptr;
 void
 pmm_init(uintptr_t mem_upper_lim)
 {
 void
 pmm_init(uintptr_t mem_upper_lim)
 {
-    max_pg = (PG_ALIGN(mem_upper_lim) >> 12) + 1;
+    max_pg = (PG_ALIGN(mem_upper_lim) >> 12);
 
     pg_lookup_ptr = LOOKUP_START;
 
 
     pg_lookup_ptr = LOOKUP_START;