summaryrefslogtreecommitdiffstats
path: root/mm/page-writeback.c
diff options
context:
space:
mode:
authorChristoph Lameter <clameter@sgi.com>2006-06-30 01:55:34 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-30 11:25:34 -0700
commit65ba55f500a37272985d071c9bbb35256a2f7c14 (patch)
treee7735326ef2d2dca9d00a6c5ae47e9eb03c7834f /mm/page-writeback.c
parent2244b95a7bcf8d24196f8a3a44187ba5dfff754c (diff)
downloadlinux-65ba55f500a37272985d071c9bbb35256a2f7c14.tar.gz
linux-65ba55f500a37272985d071c9bbb35256a2f7c14.tar.bz2
linux-65ba55f500a37272985d071c9bbb35256a2f7c14.zip
[PATCH] zoned vm counters: convert nr_mapped to per zone counter
nr_mapped is important because it allows a determination of how many pages of a zone are not mapped, which would allow a more efficient means of determining when we need to reclaim memory in a zone. We take the nr_mapped field out of the page state structure and define a new per zone counter named NR_FILE_MAPPED (the anonymous pages will be split off from NR_MAPPED in the next patch). We replace the use of nr_mapped in various kernel locations. This avoids the looping over all processors in try_to_free_pages(), writeback, reclaim (swap + zone reclaim). [akpm@osdl.org: bugfix] Signed-off-by: Christoph Lameter <clameter@sgi.com> Cc: Trond Myklebust <trond.myklebust@fys.uio.no> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'mm/page-writeback.c')
-rw-r--r--mm/page-writeback.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/page-writeback.c b/mm/page-writeback.c
index 4ec7026c7bab..60c7244c42e4 100644
--- a/mm/page-writeback.c
+++ b/mm/page-writeback.c
@@ -111,7 +111,7 @@ static void get_writeback_state(struct writeback_state *wbs)
{
wbs->nr_dirty = read_page_state(nr_dirty);
wbs->nr_unstable = read_page_state(nr_unstable);
- wbs->nr_mapped = read_page_state(nr_mapped);
+ wbs->nr_mapped = global_page_state(NR_FILE_MAPPED);
wbs->nr_writeback = read_page_state(nr_writeback);
}