|
@@ -1658,14 +1658,15 @@ static void __compact_pgdat(pg_data_t *pgdat, struct compact_control *cc)
|
|
|
!compaction_deferred(zone, cc->order))
|
|
|
compact_zone(zone, cc);
|
|
|
|
|
|
- if (cc->order > 0) {
|
|
|
- if (zone_watermark_ok(zone, cc->order,
|
|
|
- low_wmark_pages(zone), 0, 0))
|
|
|
- compaction_defer_reset(zone, cc->order, false);
|
|
|
- }
|
|
|
-
|
|
|
VM_BUG_ON(!list_empty(&cc->freepages));
|
|
|
VM_BUG_ON(!list_empty(&cc->migratepages));
|
|
|
+
|
|
|
+ if (is_via_compact_memory(cc->order))
|
|
|
+ continue;
|
|
|
+
|
|
|
+ if (zone_watermark_ok(zone, cc->order,
|
|
|
+ low_wmark_pages(zone), 0, 0))
|
|
|
+ compaction_defer_reset(zone, cc->order, false);
|
|
|
}
|
|
|
}
|
|
|
|