Hi, I have been working on this in the past weeks, but probably won't have time to finish and test properly this year. So here's an UNTESTED RFC for those brave enough to test, and also for review comments. I've been focusing on 1-7, and patch 8 is unchanged since the last posting, so Mel's suggestions (wrt fallbacks and scanning pageblock where we get the free page from) from are not included yet. For context, please see the recent threads [1] [2]. The main goal is to eliminate the reported huge free scanner activity by replacing the scanner with allocation from free lists. This has some dangers of excessive migrations as described in Patch 8 commit log, so the earlier patches try to eliminate most of them by making the migration scanner decide to actually migrate pages only if it looks like it can succeed. This should be benefical even in the current scheme. [1] https://lkml.kernel.org/r/20171122143321.29501-1-hannes@xxxxxxxxxxx [2] https://lkml.kernel.org/r/0168732b-d53f-a1b8-6623-4e4e26b85c5d@xxxxxxx Vlastimil Babka (8): mm, compaction: don't mark pageblocks unsuitable when not fully scanned mm, compaction: skip_on_failure only for MIGRATE_MOVABLE allocations mm, compaction: pass valid_page to isolate_migratepages_block mm, compaction: skip on isolation failure also in sync compaction mm, compaction: factor out checking if page can be isolated for migration mm, compaction: prescan before isolating in skip_on_failure mode mm, compaction: prescan all MIGRATE_MOVABLE pageblocks mm, compaction: replace free scanner with direct freelist allocation include/linux/vm_event_item.h | 2 + mm/compaction.c | 311 ++++++++++++++++++++++++++++++++---------- mm/internal.h | 3 + mm/page_alloc.c | 71 ++++++++++ mm/vmstat.c | 3 + 5 files changed, 316 insertions(+), 74 deletions(-) -- 2.15.1 -- 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>