Until now, COMPACT_CLUSTER_MAX is defined as SWAP_CLUSTER_MAX. Commit ("mm: increase SWAP_CLUSTER_MAX to batch TLB flushes") changes SWAP_CLUSTER_MAX from 32 to 256 to improve tlb flush performance so COMPACT_CLUSTER_MAX is also changed to 256. But, it has no justification on compaction-side and I think that loss is more than benefit. One example is that migration scanner would isolates and migrates too many pages unnecessarily with 256 COMPACT_CLUSTER_MAX. It may be enough to migrate 4 pages in order to make order-2 page, but, now, compaction will migrate 256 pages. To reduce this unneeded overhead, this patch restores COMPACT_CLUSTER_MAX to 32. Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx> --- include/linux/swap.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/linux/swap.h b/include/linux/swap.h index d08feef..31eb343 100644 --- a/include/linux/swap.h +++ b/include/linux/swap.h @@ -155,7 +155,7 @@ enum { }; #define SWAP_CLUSTER_MAX 256UL -#define COMPACT_CLUSTER_MAX SWAP_CLUSTER_MAX +#define COMPACT_CLUSTER_MAX 32UL /* * Ratio between zone->managed_pages and the "gap" that above the per-zone -- 1.9.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>