Re: [PATCH 17/18] writeback: fix dirtied pages accounting on redirty
From: Christoph Hellwig <hch@lst.de>
Date: 2011-09-07 06:56:35
Also in:
linux-fsdevel, lkml
From: Christoph Hellwig <hch@lst.de>
Date: 2011-09-07 06:56:35
Also in:
linux-fsdevel, lkml
On Wed, Sep 07, 2011 at 02:22:22AM +0200, Jan Kara wrote:
quoted
So wtf is ext4 doing? Shouldn't a page stay dirty until its written out? That is, should we really frob around this behaviour or fix ext4 because its on crack?Fengguang, could you please verify your findings with recent kernel? I believe ext4 got fixed in this regard some time ago already (and yes, old delalloc writeback code in ext4 was terrible).
The pattern we do in writeback is: in pageout / write_cache_pages: lock_page(); clear_page_dirty_for_io(); in ->writepage: set_page_writeback(); unlock_page(); end_page_writeback(); So whenever ->writepage decides it doesn't want to write things back we have to redirty pages. We have this happen quite a bit in every filesystem, but ext4 hits it a lot more than usual because it refuses to write out delalloc pages from plain ->writepage and only allows ->writepages to do it. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>