diff options
author | Christoph Lameter <clameter@sgi.com> | 2006-06-30 01:55:41 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-06-30 11:25:36 -0700 |
commit | d2c5e30c9a1420902262aa923794d2ae4e0bc391 (patch) | |
tree | b8c42c189c2bc8dd4b6d808ee8ed2b28dbd70ddd /mm/highmem.c | |
parent | fd39fc8561be33065306bdac0e30414e1e8ac8e1 (diff) | |
download | linux-3.10-d2c5e30c9a1420902262aa923794d2ae4e0bc391.tar.gz linux-3.10-d2c5e30c9a1420902262aa923794d2ae4e0bc391.tar.bz2 linux-3.10-d2c5e30c9a1420902262aa923794d2ae4e0bc391.zip |
[PATCH] zoned vm counters: conversion of nr_bounce to per zone counter
Conversion of nr_bounce to a per zone counter
nr_bounce is only used for proc output. So it could be left as an event
counter. However, the event counters may not be accurate and nr_bounce is
categorizing types of pages in a zone. So we really need this to also be a
per zone counter.
[akpm@osdl.org: bugfix]
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'mm/highmem.c')
-rw-r--r-- | mm/highmem.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/mm/highmem.c b/mm/highmem.c index 9b274fdf9d0..9b2a5403c44 100644 --- a/mm/highmem.c +++ b/mm/highmem.c @@ -315,8 +315,8 @@ static void bounce_end_io(struct bio *bio, mempool_t *pool, int err) if (bvec->bv_page == org_vec->bv_page) continue; - mempool_free(bvec->bv_page, pool); - dec_page_state(nr_bounce); + dec_zone_page_state(bvec->bv_page, NR_BOUNCE); + mempool_free(bvec->bv_page, pool); } bio_endio(bio_orig, bio_orig->bi_size, err); @@ -397,7 +397,7 @@ static void __blk_queue_bounce(request_queue_t *q, struct bio **bio_orig, to->bv_page = mempool_alloc(pool, q->bounce_gfp); to->bv_len = from->bv_len; to->bv_offset = from->bv_offset; - inc_page_state(nr_bounce); + inc_zone_page_state(to->bv_page, NR_BOUNCE); if (rw == WRITE) { char *vto, *vfrom; |