page_writeback: put account_page_redirty() after set_page_dirty()
Subsystems (3)
PATCH 1/1 page_writeback: put account_page_redirty() after set_page_dirty()
Helper account_page_redirty() fixes dirty pages counter for redirtied pages. This patch puts it after dirtying and prevents temporary underflows of dirtied pages counters on zone/bdi and current->nr_dirtied.
Signed-off-by Konstantin Khebnikov <[email protected]>
--- fs/btrfs/extent_io.c | 2 +- mm/page-writeback.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-)
fs/btrfs/extent_io.c +1 -1
@@ -1407,8 +1407,8 @@ int extent_range_redirty_for_io(struct inode *inode, u64 start, u64 end)while (index <= end_index) { page =find_get_page (inode->i_mapping, index);BUG_ON (!page);/* Pages should be in the extent_io_tree */ -account_page_redirty (page);__set_page_dirty_nobuffers (page); +account_page_redirty (page);page_cache_release (page); index++; }
mm/page-writeback.c +4 -1
@@ -2168,9 +2168,12 @@ EXPORT_SYMBOL(account_page_redirty);*/ int redirty_page_for_writepage (struct writeback_control *wbc,struct page *page) { +int ret; + wbc->pages_skipped++; + ret =__set_page_dirty_nobuffers (page);account_page_redirty (page); -return __set_page_dirty_nobuffers (page); +return ret; }EXPORT_SYMBOL (redirty_page_for_writepage);
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>