[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>
This commit is contained in:

committed by
Linus Torvalds

parent
df849a1529
commit
b1e7a8fd85
@@ -50,8 +50,6 @@ static ssize_t node_read_meminfo(struct sys_device * dev, char * buf)
|
||||
__get_zone_counts(&active, &inactive, &free, NODE_DATA(nid));
|
||||
|
||||
/* Check for negative values in these approximate counters */
|
||||
if ((long)ps.nr_dirty < 0)
|
||||
ps.nr_dirty = 0;
|
||||
if ((long)ps.nr_writeback < 0)
|
||||
ps.nr_writeback = 0;
|
||||
|
||||
@@ -81,7 +79,7 @@ static ssize_t node_read_meminfo(struct sys_device * dev, char * buf)
|
||||
nid, K(i.freehigh),
|
||||
nid, K(i.totalram - i.totalhigh),
|
||||
nid, K(i.freeram - i.freehigh),
|
||||
nid, K(ps.nr_dirty),
|
||||
nid, K(node_page_state(nid, NR_FILE_DIRTY)),
|
||||
nid, K(ps.nr_writeback),
|
||||
nid, K(node_page_state(nid, NR_FILE_PAGES)),
|
||||
nid, K(node_page_state(nid, NR_FILE_MAPPED)),
|
||||
|
Reference in New Issue
Block a user