From: Rik van Riel Undo an overzealous code cleanup to lru_cache_add_active_or_unevictable. The callers do not set PageActive so the page would get added to the wrong list. Signed-off-by: Rik van Riel Signed-off-by: KOSAKI Motohiro Cc: Lee Schermerhorn Signed-off-by: Andrew Morton --- mm/swap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff -puN mm/swap.c~swap-cull-unevictable-pages-in-fault-path-fix mm/swap.c --- a/mm/swap.c~swap-cull-unevictable-pages-in-fault-path-fix +++ a/mm/swap.c @@ -260,7 +260,7 @@ void lru_cache_add_active_or_unevictable struct vm_area_struct *vma) { if (page_evictable(page, vma)) - lru_cache_add_lru(page, page_lru(page)); + lru_cache_add_lru(page, LRU_ACTIVE + page_is_file_cache(page)); else add_page_to_unevictable_list(page); } _