summaryrefslogtreecommitdiff
path: root/mm/page_isolation.c
diff options
context:
space:
mode:
authorZhang Rui <rui.zhang@intel.com>2015-06-11 12:52:14 +0800
committerZhang Rui <rui.zhang@intel.com>2015-06-11 12:52:14 +0800
commit111b23cf895b5cbcdc1b2c6580be1bb78a577d05 (patch)
tree89b840115ccd753216ba0b26e587e52699b99310 /mm/page_isolation.c
parent6a6bcf08e5d1834447655a762dfaf552b675cc54 (diff)
parent53daf9383f34d7bf61358a37449fb4d59fbdafc2 (diff)
Merge branches 'release' and 'thermal-soc' of .git into next
Diffstat (limited to 'mm/page_isolation.c')
-rw-r--r--mm/page_isolation.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/mm/page_isolation.c b/mm/page_isolation.c
index 755a42c76eb4..303c908790ef 100644
--- a/mm/page_isolation.c
+++ b/mm/page_isolation.c
@@ -101,7 +101,8 @@ void unset_migratetype_isolate(struct page *page, unsigned migratetype)
buddy_idx = __find_buddy_index(page_idx, order);
buddy = page + (buddy_idx - page_idx);
- if (!is_migrate_isolate_page(buddy)) {
+ if (pfn_valid_within(page_to_pfn(buddy)) &&
+ !is_migrate_isolate_page(buddy)) {
__isolate_free_page(page, order);
kernel_map_pages(page, (1 << order), 1);
set_page_refcounted(page);