On 31.7.2015 23:25, David Rientjes wrote: > On Thu, 30 Jul 2015, Vlastimil Babka wrote: > >> diff --git a/mm/huge_memory.c b/mm/huge_memory.c >> index aa58a32..56355f2 100644 >> --- a/mm/huge_memory.c >> +++ b/mm/huge_memory.c >> @@ -2469,7 +2469,7 @@ khugepaged_alloc_page(struct page **hpage, gfp_t gfp, struct mm_struct *mm, >> */ >> up_read(&mm->mmap_sem); >> >> - *hpage = alloc_pages_exact_node(node, gfp, HPAGE_PMD_ORDER); >> + *hpage = __alloc_pages_node(node, gfp, HPAGE_PMD_ORDER); >> if (unlikely(!*hpage)) { >> count_vm_event(THP_COLLAPSE_ALLOC_FAILED); >> *hpage = ERR_PTR(-ENOMEM); >> @@ -2568,9 +2568,7 @@ static void collapse_huge_page(struct mm_struct *mm, >> >> VM_BUG_ON(address & ~HPAGE_PMD_MASK); >> >> - /* Only allocate from the target node */ >> - gfp = alloc_hugepage_gfpmask(khugepaged_defrag(), __GFP_OTHER_NODE) | >> - __GFP_THISNODE; >> + gfp = alloc_hugepage_gfpmask(khugepaged_defrag(), 0); >> >> /* release the mmap_sem read lock. */ >> new_page = khugepaged_alloc_page(hpage, gfp, mm, vma, address, node); > > Hmm, where is the __GFP_THISNODE enforcement in khugepaged_alloc_page() > that is removed in collapse_huge_page()? I also don't see what happened > to the __GFP_OTHER_NODE. Crap, I messed up with git, this hunk was supposed to be gone. Thanks for noticing. Please apply without the collapse_huge_page hunk, or tell me to resend once more. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>