Subject: writeback: delay periodic work on wrap Date: Fri Dec 16 19:19:16 CST 2011 This guarantees some break time on busy overwriters. Signed-off-by: Wu Fengguang --- fs/ext4/inode.c | 1 + mm/page-writeback.c | 1 + 2 files changed, 2 insertions(+) --- linux.orig/fs/ext4/inode.c 2011-12-16 19:17:04.000000000 +0800 +++ linux/fs/ext4/inode.c 2011-12-16 19:18:26.000000000 +0800 @@ -2966,6 +2966,7 @@ static int ext4_da_writepages(struct add /* * There is no more writeout needed */ + inode->dirtied_when = jiffies; index = 0; break; } --- linux.orig/mm/page-writeback.c 2011-12-16 19:13:15.000000000 +0800 +++ linux/mm/page-writeback.c 2011-12-16 19:57:14.000000000 +0800 @@ -856,6 +856,7 @@ int write_cache_pages(struct address_spa PAGECACHE_TAG_DIRTY, min(end - index, (pgoff_t)PAGEVEC_SIZE-1) + 1); if (nr_pages == 0) { + mapping->host->dirtied_when = jiffies; done_index = 0; break; }