Andrew, This aims to reduce possible pageout() calls by making the flusher concentrate a bit more on old/expired dirty inodes. Rationals and benchmark numbers are added in patches 05, 06. It runs fine on simple workloads over ext3/4, xfs, btrfs and NFS. code refactor [PATCH 1/6] writeback: pass writeback_control down to move_expired_inodes() loop condition fixes [PATCH 2/6] writeback: introduce writeback_control.inodes_cleaned [PATCH 3/6] writeback: try more writeback as long as something was written make dirty expire time a moving target [PATCH 4/6] writeback: the kupdate expire timestamp should be a moving target [PATCH 5/6] writeback: sync expired inodes first in background writeback consistent requeue policy it's not an integral part of this patchset, however do depends on patch 03 [PATCH 6/6] writeback: refill b_io iff empty Thanks, Fengguang -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx 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@xxxxxxxxx"> email@xxxxxxxxx </a>