We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 5d68924 commit bc83501Copy full SHA for bc83501
mm/compaction.c
@@ -295,10 +295,25 @@ static unsigned long isolate_migratepages(struct zone *zone,
295
continue;
296
}
297
298
+ if (!PageLRU(page))
299
+ continue;
300
+
301
+ /*
302
+ * PageLRU is set, and lru_lock excludes isolation,
303
+ * splitting and collapsing (collapsing has already
304
+ * happened if PageLRU is set).
305
+ */
306
+ if (PageTransHuge(page)) {
307
+ low_pfn += (1 << compound_order(page)) - 1;
308
309
+ }
310
311
/* Try isolate the page */
312
if (__isolate_lru_page(page, ISOLATE_BOTH, 0) != 0)
313
314
315
+ VM_BUG_ON(PageTransCompound(page));
316
317
/* Successfully isolated */
318
del_page_from_lru_list(zone, page, page_lru(page));
319
list_add(&page->lru, migratelist);
0 commit comments