This series enables vmemmap mapping allocation from device memory ranges on arm64. Before that it enables vmemmap_populate_basepages() to accommodate struct vmem_altmap based requests. This series is based on linux next (next-20190613) along with v6 arm64 hot-remove series [1]. [1] https://lkml.org/lkml/2019/6/19/3 Cc: Catalin Marinas <catalin.marinas@xxxxxxx> Cc: Will Deacon <will.deacon@xxxxxxx> Cc: Mark Rutland <mark.rutland@xxxxxxx> Cc: Tony Luck <tony.luck@xxxxxxxxx> Cc: Fenghua Yu <fenghua.yu@xxxxxxxxx> Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx> Cc: Andy Lutomirski <luto@xxxxxxxxxx> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx Cc: linux-ia64@xxxxxxxxxxxxxxx Cc: x86@xxxxxxxxxx Cc: linux-kernel@xxxxxxxxxxxxxxx Anshuman Khandual (2): mm/sparsemem: Add vmem_altmap support in vmemmap_populate_basepages() arm64/mm: Enable device memory allocation and free for vmemmap mapping arch/arm64/mm/mmu.c | 57 +++++++++++++++++++++++++++++++----------------- arch/ia64/mm/discontig.c | 2 +- arch/x86/mm/init_64.c | 4 ++-- include/linux/mm.h | 5 +++-- mm/sparse-vmemmap.c | 16 +++++++++----- 5 files changed, 54 insertions(+), 30 deletions(-) -- 2.7.4