Same as v2 but rebased on top of Nic's v4 series "powerpc: Make hash MMU code build configurable"
This series converts powerpc to default topdown mmap layout. powerpc provides its own arch_get_unmapped_area() only when slices are needed, which is only for book3s/64. First part of the series moves slices into book3s/64 specific directories and cleans up other subarchitectures. Then a small modification is done to core mm to allow powerpc to still provide its own arch_randomize_brk() Last part converts to default topdown mmap layout. Changes in v2: - Moved patch 4 before patch 2 - Make generic arch_randomize_brk() __weak - Added patch 9 Christophe Leroy (9): powerpc/mm: Make slice specific to book3s/64 powerpc/mm: Move vma_mmu_pagesize() and hugetlb_get_unmapped_area() to slice.c powerpc/mm: Remove CONFIG_PPC_MM_SLICES powerpc/mm: Remove asm/slice.h powerpc/mm: Call radix__arch_get_unmapped_area() from arch_get_unmapped_area() mm: Allow arch specific arch_randomize_brk() with CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT powerpc/mm: Convert to default topdown mmap layout powerpc/mm: Properly randomise mmap with slices powerpc: Simplify and move arch_randomize_brk() arch/powerpc/Kconfig | 2 +- arch/powerpc/include/asm/book3s/64/hash.h | 7 +- arch/powerpc/include/asm/book3s/64/hugetlb.h | 4 - arch/powerpc/include/asm/book3s/64/mmu-hash.h | 1 + arch/powerpc/include/asm/book3s/64/slice.h | 18 ++ arch/powerpc/include/asm/hugetlb.h | 2 +- arch/powerpc/include/asm/paca.h | 7 - arch/powerpc/include/asm/page.h | 1 - arch/powerpc/include/asm/processor.h | 2 - arch/powerpc/include/asm/slice.h | 46 ---- arch/powerpc/kernel/paca.c | 5 - arch/powerpc/kernel/process.c | 41 ---- arch/powerpc/mm/Makefile | 3 +- arch/powerpc/mm/book3s64/Makefile | 2 +- arch/powerpc/mm/book3s64/hash_utils.c | 33 +-- arch/powerpc/mm/book3s64/radix_hugetlbpage.c | 55 ----- arch/powerpc/mm/{ => book3s64}/slice.c | 200 ++++++++++++++- arch/powerpc/mm/hugetlbpage.c | 28 --- arch/powerpc/mm/mmap.c | 228 ------------------ arch/powerpc/mm/nohash/mmu_context.c | 9 - arch/powerpc/mm/nohash/tlb.c | 4 - arch/powerpc/platforms/Kconfig.cputype | 4 - include/linux/sizes.h | 2 + mm/util.c | 2 +- 24 files changed, 237 insertions(+), 469 deletions(-) delete mode 100644 arch/powerpc/include/asm/slice.h rename arch/powerpc/mm/{ => book3s64}/slice.c (80%) delete mode 100644 arch/powerpc/mm/mmap.c -- 2.33.1