From: Kaiyang Zhao Date: Thu, 1 Aug 2024 18:04:56 +0000 (+0000) Subject: mm: consider CMA pages in watermark check for NUMA balancing target node X-Git-Tag: v6.12-rc1~115^2~356 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=6d192303e82c7f7119020418a4c3029bebf9a0e6;p=linux-block.git mm: consider CMA pages in watermark check for NUMA balancing target node Currently in migrate_balanced_pgdat(), ALLOC_CMA flag is not passed when checking watermark on the migration target node. This does not match the gfp in alloc_misplaced_dst_folio() which allows allocation from CMA. This causes promotion failures when there are a lot of available CMA memory in the system. Therefore, we change the alloc_flags passed to zone_watermark_ok() in migrate_balanced_pgdat(). Link: https://lkml.kernel.org/r/20240801180456.25927-1-kaiyang2@cs.cmu.edu Signed-off-by: Kaiyang Zhao Acked-by: Johannes Weiner Reviewed-by: Baolin Wang Signed-off-by: Andrew Morton --- diff --git a/mm/migrate.c b/mm/migrate.c index 8578a930cad1..aa482c954cb0 100644 --- a/mm/migrate.c +++ b/mm/migrate.c @@ -2526,7 +2526,7 @@ static bool migrate_balanced_pgdat(struct pglist_data *pgdat, if (!zone_watermark_ok(zone, 0, high_wmark_pages(zone) + nr_migrate_pages, - ZONE_MOVABLE, 0)) + ZONE_MOVABLE, ALLOC_CMA)) continue; return true; }