diff --git a/mm/page_alloc.c b/mm/page_alloc.c index ac548046c172..8e4a2b995a38 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -3549,6 +3549,14 @@ bool __zone_watermark_ok(struct zone *z, unsigned int order, unsigned long mark, continue; for (mt = 0; mt < MIGRATE_PCPTYPES; mt++) { +#ifdef CONFIG_CMA + /* + * Note that this check is needed only + * when MIGRATE_CMA < MIGRATE_PCPTYPES. + */ + if (mt == MIGRATE_CMA) + continue; +#endif if (!free_area_empty(area, mt)) return true; }