From: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx> This patchset clean-up the migration target allocation functions. * Changes on v5 - remove new_non_cma_page() related patches (implementation for memalloc_nocma_{save,restore} has a critical bug that cannot exclude CMA memory in some cases so cannot use them here. Need to fix them first.) - introduce a wrapper to handle gfp_mask for hugetlb use it * Changes on v4 - use full gfp_mask - use memalloc_nocma_{save,restore} to exclude CMA memory - separate __GFP_RECLAIM handling for THP allocation - remove more wrapper functions * Changes on v3 - As Vlastimil suggested, do not introduce alloc_control for hugetlb functions - do not change the signature of migrate_pages() - rename alloc_control to migration_target_control * Changes on v2 - add acked-by tags - fix missing compound_head() call for patch #3 - remove thisnode field on alloc_control and use __GFP_THISNODE directly - fix missing __gfp_mask setup for patch "mm/hugetlb: do not modify user provided gfp_mask" * Cover-letter Contributions of this patchset are: 1. unify two hugetlb alloc functions. As a result, one is remained. 2. remove one implementation for migration target allocaion 3. remove three wrapper for migration target allocation The patchset is based on next-20200703 + revert following commits. ddc017c727e429488cccd401a7794c8152e50a5b~1..583c2617fd3244fff79ba3b445964884c5cd7780 The patchset is available on: https://github.com/JoonsooKim/linux/tree/cleanup-migration-target-allocation-v5.00-next-20200703 Thanks. Joonsoo Kim (9): mm/page_isolation: prefer the node of the source page mm/migrate: move migration helper from .h to .c mm/hugetlb: unify migration callbacks mm/migrate: clear __GFP_RECLAIM to make the migration callback consistent with regular THP allocations mm/migrate: make a standard migration target allocation function mm/mempolicy: use a standard migration target allocation callback mm/page_alloc: remove a wrapper for alloc_migration_target() mm/memory-failure: remove a wrapper for alloc_migration_target() mm/memory_hotplug: remove a wrapper for alloc_migration_target() include/linux/hugetlb.h | 41 +++++++++++++++++++++++++++++++-------- include/linux/migrate.h | 34 ++++++--------------------------- mm/hugetlb.c | 35 ++------------------------------- mm/internal.h | 8 +++++++- mm/memory-failure.c | 15 ++++++--------- mm/memory_hotplug.c | 42 +++++++++++++++++++++------------------- mm/mempolicy.c | 29 ++++++---------------------- mm/migrate.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++-- mm/page_alloc.c | 8 ++++++-- mm/page_isolation.c | 5 ----- 10 files changed, 137 insertions(+), 131 deletions(-) -- 2.7.4