|
@@ -54,8 +54,14 @@ static inline enum lru_list page_lru_base_type(struct page *page)
|
|
|
return LRU_INACTIVE_ANON;
|
|
|
}
|
|
|
|
|
|
-static inline void
|
|
|
-del_page_from_lru(struct zone *zone, struct page *page)
|
|
|
+/**
|
|
|
+ * page_off_lru - which LRU list was page on? clearing its lru flags.
|
|
|
+ * @page: the page to test
|
|
|
+ *
|
|
|
+ * Returns the LRU list a page was on, as an index into the array of LRU
|
|
|
+ * lists; and clears its Unevictable or Active flags, ready for freeing.
|
|
|
+ */
|
|
|
+static inline enum lru_list page_off_lru(struct page *page)
|
|
|
{
|
|
|
enum lru_list lru;
|
|
|
|
|
@@ -69,9 +75,7 @@ del_page_from_lru(struct zone *zone, struct page *page)
|
|
|
lru += LRU_ACTIVE;
|
|
|
}
|
|
|
}
|
|
|
- mem_cgroup_lru_del_list(page, lru);
|
|
|
- list_del(&page->lru);
|
|
|
- __mod_zone_page_state(zone, NR_LRU_BASE + lru, -hpage_nr_pages(page));
|
|
|
+ return lru;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -92,7 +96,6 @@ static inline enum lru_list page_lru(struct page *page)
|
|
|
if (PageActive(page))
|
|
|
lru += LRU_ACTIVE;
|
|
|
}
|
|
|
-
|
|
|
return lru;
|
|
|
}
|
|
|
|