This patchset enables MOVE_PMD/MOVE_PUD support on power. This requires the platform to support updating higher-level page tables without updating page table entries. This also needs to invalidate the Page Walk Cache on architecture supporting the same.
The patchset does that by switching the page table update to use mmu gather interface instead of direct tlb flush. mmu gather allows the architecture to manage page walk cache invalidate separately. Changes from V1: * Rebase to recent upstream * Fix build issues with tlb_gather_mmu changes Aneesh Kumar K.V (6): selftest/mremap_test: Update the test to handle pagesize other than 4K selftest/mremap_test: Avoid crash with static build mm/mremap: Use pmd/pud_poplulate to update page table entries mm/mremap: Use mmu gather interface instead of flush_tlb_range mm/mremap: Allow arch runtime override powerpc/mm: Enable move pmd/pud arch/arc/include/asm/tlb.h | 5 + arch/arm64/include/asm/tlb.h | 6 ++ arch/powerpc/include/asm/tlb.h | 6 ++ arch/powerpc/platforms/Kconfig.cputype | 2 + arch/x86/include/asm/tlb.h | 5 + mm/mremap.c | 54 +++++++++-- tools/testing/selftests/vm/mremap_test.c | 118 ++++++++++++----------- 7 files changed, 133 insertions(+), 63 deletions(-) -- 2.29.2