diff options
author | Miklos Szeredi <mszeredi@suse.cz> | 2008-04-30 03:54:37 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-30 11:29:50 -0400 |
commit | e4ad08fe64afca4ef79ecc4c624e6e871688da0d (patch) | |
tree | 5b8b390b874700041dc0c095e8ba9ac3ed42ea77 /mm/page-writeback.c | |
parent | 76f1418b485da2707531178e517bbb5cf06b3c76 (diff) |
mm: bdi: add separate writeback accounting capability
Add a new BDI capability flag: BDI_CAP_NO_ACCT_WB. If this flag is
set, then don't update the per-bdi writeback stats from
test_set_page_writeback() and test_clear_page_writeback().
Misc cleanups:
- convert bdi_cap_writeback_dirty() and friends to static inline functions
- create a flag that includes all three dirty/writeback related flags,
since almst all users will want to have them toghether
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/page-writeback.c')
-rw-r--r-- | mm/page-writeback.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/mm/page-writeback.c b/mm/page-writeback.c index 2a9942f5387c..bbcb916190c9 100644 --- a/mm/page-writeback.c +++ b/mm/page-writeback.c | |||
@@ -1246,7 +1246,7 @@ int test_clear_page_writeback(struct page *page) | |||
1246 | radix_tree_tag_clear(&mapping->page_tree, | 1246 | radix_tree_tag_clear(&mapping->page_tree, |
1247 | page_index(page), | 1247 | page_index(page), |
1248 | PAGECACHE_TAG_WRITEBACK); | 1248 | PAGECACHE_TAG_WRITEBACK); |
1249 | if (bdi_cap_writeback_dirty(bdi)) { | 1249 | if (bdi_cap_account_writeback(bdi)) { |
1250 | __dec_bdi_stat(bdi, BDI_WRITEBACK); | 1250 | __dec_bdi_stat(bdi, BDI_WRITEBACK); |
1251 | __bdi_writeout_inc(bdi); | 1251 | __bdi_writeout_inc(bdi); |
1252 | } | 1252 | } |
@@ -1275,7 +1275,7 @@ int test_set_page_writeback(struct page *page) | |||
1275 | radix_tree_tag_set(&mapping->page_tree, | 1275 | radix_tree_tag_set(&mapping->page_tree, |
1276 | page_index(page), | 1276 | page_index(page), |
1277 | PAGECACHE_TAG_WRITEBACK); | 1277 | PAGECACHE_TAG_WRITEBACK); |
1278 | if (bdi_cap_writeback_dirty(bdi)) | 1278 | if (bdi_cap_account_writeback(bdi)) |
1279 | __inc_bdi_stat(bdi, BDI_WRITEBACK); | 1279 | __inc_bdi_stat(bdi, BDI_WRITEBACK); |
1280 | } | 1280 | } |
1281 | if (!PageDirty(page)) | 1281 | if (!PageDirty(page)) |