Changelog since v1 o Rebase to v3.16-rc2 o Move CFQ patch to end of series where it can be rejected easier if necessary o Introduce page-reclaim related patch related to kswapd/fairzone interactions o Rework fast zone policy patch IO performance since 3.0 has been a mixed bag. In many respects we are better and in some we are worse and one of those places is sequential read throughput. This is visible in a number of benchmarks but I looked at tiobench the closest. This is using ext3 on a mid-range desktop and comparing against 3.0. 3.16.0-rc2 3.16.0-rc2 3.0.0 vanilla cfq600 vanilla Min SeqRead-MB/sec-1 120.96 ( 0.00%) 140.43 ( 16.10%) 134.04 ( 10.81%) Min SeqRead-MB/sec-2 100.73 ( 0.00%) 118.18 ( 17.32%) 120.76 ( 19.88%) Min SeqRead-MB/sec-4 96.05 ( 0.00%) 110.84 ( 15.40%) 114.49 ( 19.20%) Min SeqRead-MB/sec-8 82.46 ( 0.00%) 92.40 ( 12.05%) 98.04 ( 18.89%) Min SeqRead-MB/sec-16 66.37 ( 0.00%) 76.68 ( 15.53%) 79.49 ( 19.77%) This series does not fully restore throughput performance to 3.0 levels but it brings it acceptably close. While throughput for higher numbers of threads is lower, it is known that it can be tuned by increasing target_latency or disabling low_latency giving higher overall throughput at the cost of latency and IO fairness. This series in ordered in ascending-likelihood-to-cause-controversary so that a partial series can still potentially be merged even if parts of it are naked (e.g. CGQ). For reference, here is the series without the CFQ patch at the end. 3.16.0-rc2 3.16.0-rc2 3.0.0 vanilla lessdirty vanilla Min SeqRead-MB/sec-1 120.96 ( 0.00%) 141.04 ( 16.60%) 134.04 ( 10.81%) Min SeqRead-MB/sec-2 100.73 ( 0.00%) 116.26 ( 15.42%) 120.76 ( 19.88%) Min SeqRead-MB/sec-4 96.05 ( 0.00%) 109.52 ( 14.02%) 114.49 ( 19.20%) Min SeqRead-MB/sec-8 82.46 ( 0.00%) 88.60 ( 7.45%) 98.04 ( 18.89%) Min SeqRead-MB/sec-16 66.37 ( 0.00%) 69.87 ( 5.27%) 79.49 ( 19.77%) block/cfq-iosched.c | 2 +- include/linux/mmzone.h | 210 ++++++++++++++++++++++------------------- include/linux/writeback.h | 1 + include/trace/events/pagemap.h | 16 ++-- mm/internal.h | 1 + mm/mm_init.c | 5 +- mm/page-writeback.c | 15 +-- mm/page_alloc.c | 206 ++++++++++++++++++++++++++-------------- mm/swap.c | 4 +- mm/vmscan.c | 16 ++-- mm/vmstat.c | 4 +- 11 files changed, 285 insertions(+), 195 deletions(-) -- 1.8.4.5 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>