aboutsummaryrefslogtreecommitdiffstats
path: root/fs/buffer.c
diff options
context:
space:
mode:
authorChristoph Lameter <clameter@sgi.com>2006-06-30 04:55:39 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-30 14:25:35 -0400
commitb1e7a8fd854d2f895730e82137400012b509650e (patch)
tree9fba87ff6b0146ebd4ee5bc7d5f0c8b037dbb3ad /fs/buffer.c
parentdf849a1529c106f7460e51479ca78fe07b07dc8c (diff)
[PATCH] zoned vm counters: conversion of nr_dirty to per zone counter
This makes nr_dirty a per zone counter. Looping over all processors is avoided during writeback state determination. The counter aggregation for nr_dirty had to be undone in the NFS layer since we summed up the page counts from multiple zones. Someone more familiar with NFS should probably review what I have done. [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 'fs/buffer.c')
-rw-r--r--fs/buffer.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/buffer.c b/fs/buffer.c
index e9994722f4a3..90e52e677209 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
@@ -852,7 +852,7 @@ int __set_page_dirty_buffers(struct page *page)
852 write_lock_irq(&mapping->tree_lock); 852 write_lock_irq(&mapping->tree_lock);
853 if (page->mapping) { /* Race with truncate? */ 853 if (page->mapping) { /* Race with truncate? */
854 if (mapping_cap_account_dirty(mapping)) 854 if (mapping_cap_account_dirty(mapping))
855 inc_page_state(nr_dirty); 855 __inc_zone_page_state(page, NR_FILE_DIRTY);
856 radix_tree_tag_set(&mapping->page_tree, 856 radix_tree_tag_set(&mapping->page_tree,
857 page_index(page), 857 page_index(page),
858 PAGECACHE_TAG_DIRTY); 858 PAGECACHE_TAG_DIRTY);