physical page list mapping
[lunaix-os.git] / lunaix-os / includes / lunaix / mm / page.h
index da7cab42fa42d8e6478638ac65a05e0d75a0ae57..772ff75365a397802e8f8365d2c79bafb490cb12 100644 (file)
@@ -145,6 +145,15 @@ pin_leaflet(struct leaflet* leaflet)
     change_page_type(get_ppage(leaflet), PP_FGLOCKED);
 }
 
+static inline int
+to_napot_order(int nr_pages)
+{
+    int order;
+    
+    order = ilog2(nr_pages);
+    return is_pot(nr_pages) ? order : order + 1;
+}
+
 /**
  * @brief Map a leaflet
  *