X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=mm%2Fmempolicy.c;h=87a177917cb2e60a13b09e6a53836ccd9f9275bf;hb=3bc27cdfe989906fb025204c68a6f85b07b3a192;hp=a7f1e0d1d6b8fed5d1e3d9bd1380c9cd9b1447e8;hpb=e81b594cdae73f341ea13bc9fb2b57a5b739c1a3;p=uclinux-h8%2Flinux.git diff --git a/mm/mempolicy.c b/mm/mempolicy.c index a7f1e0d1d6b8..87a177917cb2 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -608,9 +608,6 @@ static int queue_pages_test_walk(unsigned long start, unsigned long end, qp->prev = vma; - if (vma->vm_flags & VM_PFNMAP) - return 1; - if (flags & MPOL_MF_LAZY) { /* Similar to task_numa_work, skip inaccessible VMAs */ if (vma->vm_flags & (VM_READ | VM_EXEC | VM_WRITE)) @@ -945,7 +942,7 @@ static struct page *new_node_page(struct page *page, unsigned long node, int **x return alloc_huge_page_node(page_hstate(compound_head(page)), node); else - return alloc_pages_exact_node(node, GFP_HIGHUSER_MOVABLE | + return __alloc_pages_node(node, GFP_HIGHUSER_MOVABLE | __GFP_THISNODE, 0); } @@ -2001,7 +1998,7 @@ retry_cpuset: nmask = policy_nodemask(gfp, pol); if (!nmask || node_isset(hpage_node, *nmask)) { mpol_cond_put(pol); - page = alloc_pages_exact_node(hpage_node, + page = __alloc_pages_node(hpage_node, gfp | __GFP_THISNODE, order); goto out; }