On Fri, May 31, 2013 at 11:42:52AM +0200, Jan Kara wrote: > Currently PageWriteback bit gets cleared from put_io_page() called from > ext4_end_bio(). This is somewhat inconvenient as extent tree is not > fully updated at that time (unwritten extents are not marked as written) > so we cannot read the data back yet. This design was dictated by lock > ordering as we cannot start a transaction while PageWriteback bit is set > (we could easily deadlock with ext4_da_writepages()). But now that we > use transaction reservation for extent conversion, locking issues are > solved and we can move PageWriteback bit clearing after extent > conversion is done. As a result we can remove wait for unwritt en extent > conversion from ext4_sync_file() because it already implicitely happe ns > through wait_on_page_writeback(). > > We implement deferring of PageWriteback clearing by queueing completed > bios to appropriate io_end and processing all the pages when io_end is > going to be freed instead of at the moment ext4_io_end() is called. > > Reviewed-by: Zheng Liu <wenqing.lz@xxxxxxxxxx> > Signed-off-by: Jan Kara <jack@xxxxxxx> Thanks, applied. - Ted -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html