summaryrefslogtreecommitdiffstats
path: root/include/linux/swap.h
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2000-06-19 22:45:37 +0000
committerRalf Baechle <ralf@linux-mips.org>2000-06-19 22:45:37 +0000
commit6d403070f28cd44860fdb3a53be5da0275c65cf4 (patch)
tree0d0e7fe7b5fb7568d19e11d7d862b77a866ce081 /include/linux/swap.h
parentecf1bf5f6c2e668d03b0a9fb026db7aa41e292e1 (diff)
Merge with 2.4.0-test1-ac21 + pile of MIPS cleanups to make merging
possible. Chainsawed RM200 kernel to compile again. Jazz machine status unknown.
Diffstat (limited to 'include/linux/swap.h')
-rw-r--r--include/linux/swap.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/linux/swap.h b/include/linux/swap.h
index 9226ce0a5..5ee3b7b77 100644
--- a/include/linux/swap.h
+++ b/include/linux/swap.h
@@ -161,6 +161,16 @@ static inline int is_page_shared(struct page *page)
extern spinlock_t pagemap_lru_lock;
/*
+ * Magic constants for page aging. If the system is programmed
+ * right, tweaking these should have almost no effect...
+ * The 2.4 code, however, is mostly simple and stable ;)
+ */
+#define PG_AGE_MAX 64
+#define PG_AGE_START 2
+#define PG_AGE_ADV 3
+#define PG_AGE_DECL 1
+
+/*
* Helper macros for lru_pages handling.
*/
#define lru_cache_add(page) \
@@ -168,12 +178,16 @@ do { \
spin_lock(&pagemap_lru_lock); \
list_add(&(page)->lru, &lru_cache); \
nr_lru_pages++; \
+ page->age = PG_AGE_START; \
+ ClearPageReferenced(page); \
+ SetPageActive(page); \
spin_unlock(&pagemap_lru_lock); \
} while (0)
#define __lru_cache_del(page) \
do { \
list_del(&(page)->lru); \
+ ClearPageActive(page); \
nr_lru_pages--; \
} while (0)