This series enables THP migration without split on arm64 by subscribing to ARCH_ENABLE_THP_MIGRATION. Before that it modifies arm64 platform THP helpers like pmd_present() and pmd_trans_huge() to comply with expected generic MM semantics as concluded from a previous discussion [1]. Initial THP migration and stress tests look good for various THP sizes. I will continue testing this further. But meanwhile looking for some early reviews, feedbacks and suggestions on the approach. This is based on linux-next tree (next-20190626). Question: Instead of directly using PTE_SPECIAL, would it be better to override the same bit as PMD_SPLITTING and create it's associated helpers to make this more clear and explicit ? [1] https://lkml.org/lkml/2018/10/9/220 Cc: Catalin Marinas <catalin.marinas@xxxxxxx> Cc: Will Deacon <will@xxxxxxxxxx> Cc: Mark Rutland <mark.rutland@xxxxxxx> Cc: Marc Zyngier <marc.zyngier@xxxxxxx> Cc: Suzuki Poulose <suzuki.poulose@xxxxxxx> Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx Cc: linux-kernel@xxxxxxxxxxxxxxx Anshuman Khandual (2): arm64/mm: Change THP helpers to comply with generic MM semantics arm64/mm: Enable THP migration without split arch/arm64/Kconfig | 4 ++++ arch/arm64/include/asm/pgtable.h | 32 +++++++++++++++++++++++++++++--- 2 files changed, 33 insertions(+), 3 deletions(-) -- 2.7.4