summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorAndrew Morton <akpm@zip.com.au>2002-05-19 02:23:27 -0700
committerArnaldo Carvalho de Melo <acme@conectiva.com.br>2002-05-19 02:23:27 -0700
commita25364526006361b7e7e011ce488cb46e89dd3ef (patch)
tree3ff05b46aaeb9b8c47c413b7f462d2a047d9ba10 /include/linux
parent5409c2b52ffea911ba1e47b5cbf8d911efb5d0c6 (diff)
[PATCH] remove PG_launder
Removal of PG_launder. It's not obvious (to me) why this ever existed. If it's to prevent deadlocks then I'd like to know who was performing __GFP_FS allocations while holding a page lock? But in 2.5, the only memory allocations which are performed when the caller holds PG_writeback against an unsubmitted page are those which occur inside submit_bh(). There will be no __GFS_FS allocations in that call chain. Removing PG_launder means that memory allocators can block on any PageWriteback() page at all, which reduces the risk of very long list walks inside pagemap_lru_lock in shrink_cache().
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/page-flags.h9
1 files changed, 2 insertions, 7 deletions
diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h
index f56db65ebef3..52b7117c4f64 100644
--- a/include/linux/page-flags.h
+++ b/include/linux/page-flags.h
@@ -62,9 +62,8 @@
#define PG_arch_1 10
#define PG_reserved 11
-#define PG_launder 12 /* written out by VM pressure.. */
-#define PG_private 13 /* Has something at ->private */
-#define PG_writeback 14 /* Page is under writeback */
+#define PG_private 12 /* Has something at ->private */
+#define PG_writeback 13 /* Page is under writeback */
/*
* Global page accounting. One instance per CPU.
@@ -172,10 +171,6 @@ extern void get_page_state(struct page_state *ret);
#define SetPageReserved(page) set_bit(PG_reserved, &(page)->flags)
#define ClearPageReserved(page) clear_bit(PG_reserved, &(page)->flags)
-#define PageLaunder(page) test_bit(PG_launder, &(page)->flags)
-#define SetPageLaunder(page) set_bit(PG_launder, &(page)->flags)
-#define ClearPageLaunder(page) clear_bit(PG_launder, &(page)->flags)
-
#define SetPagePrivate(page) set_bit(PG_private, &(page)->flags)
#define ClearPagePrivate(page) clear_bit(PG_private, &(page)->flags)
#define PagePrivate(page) test_bit(PG_private, &(page)->flags)