summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mm/compaction.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/mm/compaction.c b/mm/compaction.c
index 2c8999d027ab..a68230ab451d 100644
--- a/mm/compaction.c
+++ b/mm/compaction.c
@@ -1988,6 +1988,14 @@ static void kcompactd_do_work(pg_data_t *pgdat)
1988 compaction_defer_reset(zone, cc.order, false); 1988 compaction_defer_reset(zone, cc.order, false);
1989 } else if (status == COMPACT_PARTIAL_SKIPPED || status == COMPACT_COMPLETE) { 1989 } else if (status == COMPACT_PARTIAL_SKIPPED || status == COMPACT_COMPLETE) {
1990 /* 1990 /*
1991 * Buddy pages may become stranded on pcps that could
1992 * otherwise coalesce on the zone's free area for
1993 * order >= cc.order. This is ratelimited by the
1994 * upcoming deferral.
1995 */
1996 drain_all_pages(zone);
1997
1998 /*
1991 * We use sync migration mode here, so we defer like 1999 * We use sync migration mode here, so we defer like
1992 * sync direct compaction does. 2000 * sync direct compaction does.
1993 */ 2001 */