On Wed, Jul 24, 2013 at 02:10:07PM +0800, Wanpeng Li wrote: ... > >diff --git v3.11-rc1.orig/mm/page_isolation.c v3.11-rc1/mm/page_isolation.c > >index 383bdbb..cf48ef6 100644 > >--- v3.11-rc1.orig/mm/page_isolation.c > >+++ v3.11-rc1/mm/page_isolation.c > >@@ -6,6 +6,7 @@ > > #include <linux/page-isolation.h> > > #include <linux/pageblock-flags.h> > > #include <linux/memory.h> > >+#include <linux/hugetlb.h> > > #include "internal.h" > > > > int set_migratetype_isolate(struct page *page, bool skip_hwpoisoned_pages) > >@@ -252,6 +253,10 @@ struct page *alloc_migrate_target(struct page *page, unsigned long private, > > { > > gfp_t gfp_mask = GFP_USER | __GFP_MOVABLE; > > > >+ if (PageHuge(page)) > >+ return alloc_huge_page_node(page_hstate(compound_head(page)), > >+ numa_node_id()); > >+ > > Why specify current node? Maybe current node is under remove. Yes. One difficulty is that this function doesn't have vma and we can't rely on mempolicy for node choice. I think that simply choosing the next node by incrementing node id can be a work around, though it's not the best solution. Thanks, Naoya Horiguchi -- 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>