Commit 1c0f3462 authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] Move unreleasable pages onto the active list

With some workloads a large number of pages coming off the LRU are
pinned blockdev pagecache - things like ext2 group descriptors, pages
which have buffers in the per-cpu buffer LRUs, etc.

They keep churning around the inactive list, reducing the overall page
reclaim effectiveness.

So move these pages onto the active list.
parent 32b51ef2
......@@ -364,7 +364,7 @@ shrink_list(struct list_head *page_list, unsigned int gfp_mask,
*/
if (PagePrivate(page)) {
if (!try_to_release_page(page, gfp_mask))
goto keep_locked;
goto activate_locked;
if (!mapping && page_count(page) == 1)
goto free_it;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment