Hi all, this is another series to do fix and clean up to compaction. Patch 1-2 fix and clean up freepage list operation. Patch 3-4 fix and clean up isolation of freepages Patch 7 factor code to check if compaction is needed for allocation order. More details can be found in respective patches. Thanks! v1->v2: -Collect RVB from Baolin. -Keep pfn inside of pageblock in patch 3. -Only improve comment of is_via_compact_memory in patch 6. -Squash patch 8 and patch 9 into patch 7 and use ALLOC_WMARK_MIN instead of magic number 0. Kemeng Shi (7): mm/compaction: use correct list in move_freelist_{head}/{tail} mm/compaction: call list_is_{first}/{last} more intuitively in move_freelist_{head}/{tail} mm/compaction: correctly return failure with bogus compound_order in strict mode mm/compaction: simplify pfn iteration in isolate_freepages_range mm/compaction: remove repeat compact_blockskip_flush check in reset_isolation_suitable mm/compaction: improve comment of is_via_compact_memory mm/compaction: factor out code to test if we should run compaction for target order mm/compaction.c | 106 +++++++++++++++++++++++++----------------------- 1 file changed, 56 insertions(+), 50 deletions(-) -- 2.30.0