summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mm/compaction.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/mm/compaction.c b/mm/compaction.c
index 18a90b4d0bfc..be153e26c57d 100644
--- a/mm/compaction.c
+++ b/mm/compaction.c
@@ -617,7 +617,8 @@ isolate_migratepages_range(struct zone *zone, struct compact_control *cc,
check_compact_cluster:
/* Avoid isolating too much */
- if (cc->nr_migratepages == COMPACT_CLUSTER_MAX) {
+ if (cc->nr_migratepages == COMPACT_CLUSTER_MAX &&
+ !is_cma_page(pfn_to_page(low_pfn))) {
++low_pfn;
break;
}