aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mm/page_isolation.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/mm/page_isolation.c b/mm/page_isolation.c
index 9c03dca8c2ad..6744235d2d0e 100644
--- a/mm/page_isolation.c
+++ b/mm/page_isolation.c
@@ -200,8 +200,11 @@ __test_page_isolated_in_pageblock(unsigned long pfn, unsigned long end_pfn)
200 continue; 200 continue;
201 } 201 }
202 page = pfn_to_page(pfn); 202 page = pfn_to_page(pfn);
203 if (PageBuddy(page)) 203 if (PageBuddy(page)) {
204 if (get_freepage_migratetype(page) != MIGRATE_ISOLATE)
205 break;
204 pfn += 1 << page_order(page); 206 pfn += 1 << page_order(page);
207 }
205 else if (page_count(page) == 0 && 208 else if (page_count(page) == 0 &&
206 get_freepage_migratetype(page) == MIGRATE_ISOLATE) 209 get_freepage_migratetype(page) == MIGRATE_ISOLATE)
207 pfn += 1; 210 pfn += 1;