Subject: writeback: accurately account dirtied pages Date: Thu Apr 14 07:52:37 CST 2011 Signed-off-by: Wu Fengguang --- mm/page-writeback.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) --- linux-next.orig/mm/page-writeback.c 2011-04-16 11:28:41.000000000 +0800 +++ linux-next/mm/page-writeback.c 2011-04-16 11:28:41.000000000 +0800 @@ -1352,8 +1352,6 @@ void balance_dirty_pages_ratelimited_nr( if (!bdi_cap_account_dirty(bdi)) return; - current->nr_dirtied += nr_pages_dirtied; - if (dirty_exceeded_recently(bdi, MAX_PAUSE)) { unsigned long max = current->nr_dirtied + (128 >> (PAGE_SHIFT - 10)); @@ -1819,6 +1817,7 @@ void account_page_dirtied(struct page *p __inc_bdi_stat(mapping->backing_dev_info, BDI_DIRTIED); task_dirty_inc(current); task_io_account_write(PAGE_CACHE_SIZE); + current->nr_dirtied++; } } EXPORT_SYMBOL(account_page_dirtied);