Andrew, This is the combination of all the recent writeback patches that get reasonably reviewed and tested. The first 10 patches are already in -mm tree, with updates: - remove "writeback: pass writeback_control down to move_expired_inodes()", and resolve the resulting merge conflicts in other patches. - move ahead the sync livelock prevention patches (01, 02) so that (04) won't livelock sync - merge the three -mm fixes to (08) - fixed changelog of (01) - rename .for_sync to .tagged_writepages [PATCH 01/18] writeback: introduce .tagged_writepages for the WB_SYNC_NONE sync stage [PATCH 02/18] writeback: update dirtied_when for synced inode to prevent livelock [PATCH 03/18] writeback: introduce writeback_control.inodes_cleaned [PATCH 04/18] writeback: try more writeback as long as something was written [PATCH 05/18] writeback: the kupdate expire timestamp should be a moving target [PATCH 06/18] writeback: sync expired inodes first in background writeback [PATCH 07/18] writeback: refill b_io iff empty [PATCH 08/18] writeback: split inode_wb_list_lock into bdi_writeback.list_lock [PATCH 09/18] writeback: elevate queue_io() into wb_writeback() [PATCH 10/18] writeback: avoid extra sync work at enqueue time The following 8 patches were posted and reviewed these days: [PATCH 11/18] writeback: add bdi_dirty_limit() kernel-doc [PATCH 12/18] writeback: skip balance_dirty_pages() for in-memory fs [PATCH 13/18] writeback: remove writeback_control.more_io [PATCH 14/18] writeback: make writeback_control.nr_to_write straight [PATCH 15/18] writeback: remove .nonblocking and .encountered_congestion [PATCH 16/18] writeback: trace event writeback_single_inode [PATCH 17/18] writeback: trace event writeback_queue_io [PATCH 18/18] writeback: rearrange the wb_writeback() loop Thanks to Jan and Dave for the careful reviews! The patches are git pullable from git://git.kernel.org/pub/scm/linux/kernel/git/wfg/writeback.git fs-writeback fs/block_dev.c | 16 +- fs/btrfs/extent_io.c | 2 - fs/ext4/inode.c | 4 +- fs/fs-writeback.c | 411 +++++++++++++++++++++----------------- fs/inode.c | 5 +- fs/nfs/write.c | 3 +- fs/xfs/linux-2.6/xfs_aops.c | 2 +- include/linux/backing-dev.h | 2 + include/linux/writeback.h | 14 +- include/trace/events/btrfs.h | 6 +- include/trace/events/ext4.h | 6 +- include/trace/events/writeback.h | 137 ++++++++++++-- mm/backing-dev.c | 30 ++- mm/filemap.c | 6 +- mm/page-writeback.c | 42 ++-- mm/rmap.c | 4 +- 16 files changed, 420 insertions(+), 270 deletions(-) Thanks, Fengguang -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html