diff options
Diffstat (limited to 'mm/page_alloc.c')
-rw-r--r-- | mm/page_alloc.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c index a919ba5cb3c8..a0e5ec0addd2 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c | |||
@@ -7789,6 +7789,14 @@ bool has_unmovable_pages(struct zone *zone, struct page *page, int count, | |||
7789 | goto unmovable; | 7789 | goto unmovable; |
7790 | 7790 | ||
7791 | /* | 7791 | /* |
7792 | * If the zone is movable and we have ruled out all reserved | ||
7793 | * pages then it should be reasonably safe to assume the rest | ||
7794 | * is movable. | ||
7795 | */ | ||
7796 | if (zone_idx(zone) == ZONE_MOVABLE) | ||
7797 | continue; | ||
7798 | |||
7799 | /* | ||
7792 | * Hugepages are not in LRU lists, but they're movable. | 7800 | * Hugepages are not in LRU lists, but they're movable. |
7793 | * We need not scan over tail pages bacause we don't | 7801 | * We need not scan over tail pages bacause we don't |
7794 | * handle each tail page individually in migration. | 7802 | * handle each tail page individually in migration. |