Implement ck1 patchset
/include/linux/mm_inline.h
blob:8f7d24712dc115790269442be6f8c245d4cf6145 -> blob:62e4208ecef473a52dda81e9ebc0b40ab3b6bd13
--- include/linux/mm_inline.h
+++ include/linux/mm_inline.h
@@ -23,9 +23,12 @@ static inline int page_is_file_cache(str
static inline void
__add_page_to_lru_list(struct zone *zone, struct page *page, enum lru_list l,
- struct list_head *head)
+ struct list_head *head, int tail)
{
- list_add(&page->lru, head);
+ if (tail)
+ list_add_tail(&page->lru, head);
+ else
+ list_add(&page->lru, head);
__mod_zone_page_state(zone, NR_LRU_BASE + l, hpage_nr_pages(page));
mem_cgroup_add_lru_list(page, l);
}
@@ -33,7 +36,13 @@ __add_page_to_lru_list(struct zone *zone
static inline void
add_page_to_lru_list(struct zone *zone, struct page *page, enum lru_list l)
{
- __add_page_to_lru_list(zone, page, l, &zone->lru[l].list);
+ __add_page_to_lru_list(zone, page, l, &zone->lru[l].list, 0);
+}
+
+static inline void
+add_page_to_lru_list_tail(struct zone *zone, struct page *page, enum lru_list l)
+{
+ __add_page_to_lru_list(zone, page, l, &zone->lru[l].list, 1);
}
static inline void