Re: [VM PATCH] rotate_reclaimable_page fails frequently

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


Marcelo Tosatti wrote:

Marking PG_writeback pages as PG_rotated once they're chosen candidates
for eviction increases the number of rotated pages dramatically, but
that does not necessarily increase performance (I was unable to see any
performance increase under the limited testing I've done, even though
the pgrotated numbers were _way_ higher).

Just FYI, this change can end up leaking the PageReclaim bit
which IIRC can make bad noises in the free pages check, and
is also a tiny bit sloppy unless we also do a precautionary
ClearPageReclaim in writeback paths.

However I don't think it is a bad idea in theory.

Another issue is that increasing the number of rotated pages increases
lru_lock contention, which might not be an advantage for certain

So, any change in this area needs careful study under a varied,
meaningful set of workloads and configurations (which has not been
happening very often).

diff --git a/mm/vmscan.c b/mm/vmscan.c
index 5a61080..26319eb 100644
--- a/mm/vmscan.c
+++ b/mm/vmscan.c
@@ -447,8 +447,14 @@ static int shrink_list(struct list_head if (page_mapped(page) || PageSwapCache(page))
- if (PageWriteback(page))
+		if (PageWriteback(page)) {
+ /* mark writeback, candidate for eviction pages as + * PG_reclaim to free them immediately once they're + * laundered.
+			 */
+			SetPageReclaim(page);
 			goto keep_locked;
+		}
referenced = page_referenced(page, 1);
 		/* In active use or really unfreeable?  Activate it. */

SUSE Labs, Novell Inc.
Send instant messages to your online friends -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at
Please read the FAQ at

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux