Page cache patch - less aggressive

Krzysztof Strasburger (strasbur@chkw386.ch.pwr.wroc.pl)
Tue, 1 Jul 97 12:35


As suggested by Mark Hemment, I used age_page instead of setting
page->age to 0. It works for me. I'm sorry, Werner. Please, compare
both and choose the better.
Krzysztof Strasburger

--- linux/mm/filemap.c.orig Tue May 6 07:37:23 1997
+++ linux/mm/filemap.c Tue Jul 1 09:21:10 1997
@@ -22,6 +22,7 @@
#include <linux/locks.h>
#include <linux/pagemap.h>
#include <linux/swap.h>
+#include <linux/swapctl.h>

#include <asm/segment.h>
#include <asm/system.h>
@@ -187,7 +188,11 @@

default:
/* more than one users: we can't throw it away */
- set_bit(PG_referenced, &page->flags);
+ /* Original: make the shared page inviolable. */
+ /* >set_bit(PG_referenced, &page->flags); */
+ /* Modified: make it good candidate for swapping out. */
+ /* page->age = 0; */
+ age_page(page);
/* fall through */
case 0:
/* nothing */