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>
This commit is contained in:
committed by
Linus Torvalds
parent
76f1418b48
commit
e4ad08fe64
@@ -1246,7 +1246,7 @@ int test_clear_page_writeback(struct page *page)
|
||||
radix_tree_tag_clear(&mapping->page_tree,
|
||||
page_index(page),
|
||||
PAGECACHE_TAG_WRITEBACK);
|
||||
if (bdi_cap_writeback_dirty(bdi)) {
|
||||
if (bdi_cap_account_writeback(bdi)) {
|
||||
__dec_bdi_stat(bdi, BDI_WRITEBACK);
|
||||
__bdi_writeout_inc(bdi);
|
||||
}
|
||||
@@ -1275,7 +1275,7 @@ int test_set_page_writeback(struct page *page)
|
||||
radix_tree_tag_set(&mapping->page_tree,
|
||||
page_index(page),
|
||||
PAGECACHE_TAG_WRITEBACK);
|
||||
if (bdi_cap_writeback_dirty(bdi))
|
||||
if (bdi_cap_account_writeback(bdi))
|
||||
__inc_bdi_stat(bdi, BDI_WRITEBACK);
|
||||
}
|
||||
if (!PageDirty(page))
|
||||
|
Reference in New Issue
Block a user