diff options
Diffstat (limited to 'mm/mempolicy.c')
-rw-r--r-- | mm/mempolicy.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/mm/mempolicy.c b/mm/mempolicy.c index cc61c7a7d6a1..3650036bb910 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -1198,14 +1198,14 @@ static struct page *new_page(struct page *page, unsigned long start, int **x) break; vma = vma->vm_next; } - /* - * queue_pages_range() confirms that @page belongs to some vma, - * so vma shouldn't be NULL. - */ - BUG_ON(!vma); - if (PageHuge(page)) + if (PageHuge(page)) { + BUG_ON(!vma); return alloc_huge_page_noerr(vma, address, 1); + } + /* + * if !vma, alloc_page_vma() will use task or system default policy + */ return alloc_page_vma(GFP_HIGHUSER_MOVABLE, vma, address); } #else |