Commit b42279f0 authored by Aneesh Kumar K.V's avatar Aneesh Kumar K.V Committed by Michael Ellerman

powerpc/mm/nohash: MM_SLICE is only used by book3s 64

BOOKE code is dead code as per the Kconfig details. So make it simpler
by enabling MM_SLICE only for book3s_64. The changes w.r.t nohash is just
removing deadcode. W.r.t ppc64, 4k without hugetlb will now enable MM_SLICE.
But that is good, because we reduce one extra variant which probably is not
getting tested much.
Reviewed-by: default avatarPaul Mackerras <paulus@ozlabs.org>
Signed-off-by: default avatarAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent adec9a2e
...@@ -229,11 +229,6 @@ typedef struct { ...@@ -229,11 +229,6 @@ typedef struct {
unsigned int id; unsigned int id;
unsigned int active; unsigned int active;
unsigned long vdso_base; unsigned long vdso_base;
#ifdef CONFIG_PPC_MM_SLICES
u64 low_slices_psize; /* SLB page size encodings */
u64 high_slices_psize; /* 4 bits per slice for now */
u16 user_psize; /* page size index */
#endif
#ifdef CONFIG_PPC_64K_PAGES #ifdef CONFIG_PPC_64K_PAGES
/* for 4K PTE fragment support */ /* for 4K PTE fragment support */
void *pte_frag; void *pte_frag;
......
...@@ -88,11 +88,6 @@ ...@@ -88,11 +88,6 @@
#include <asm/nohash/pte-book3e.h> #include <asm/nohash/pte-book3e.h>
#include <asm/pte-common.h> #include <asm/pte-common.h>
#ifdef CONFIG_PPC_MM_SLICES
#define HAVE_ARCH_UNMAPPED_AREA
#define HAVE_ARCH_UNMAPPED_AREA_TOPDOWN
#endif /* CONFIG_PPC_MM_SLICES */
#ifndef __ASSEMBLY__ #ifndef __ASSEMBLY__
/* pte_clear moved to later in this file */ /* pte_clear moved to later in this file */
......
...@@ -148,16 +148,9 @@ void book3e_hugetlb_preload(struct vm_area_struct *vma, unsigned long ea, ...@@ -148,16 +148,9 @@ void book3e_hugetlb_preload(struct vm_area_struct *vma, unsigned long ea,
mm = vma->vm_mm; mm = vma->vm_mm;
#ifdef CONFIG_PPC_MM_SLICES
psize = get_slice_psize(mm, ea);
tsize = mmu_get_tsize(psize);
shift = mmu_psize_defs[psize].shift;
#else
psize = vma_mmu_pagesize(vma); psize = vma_mmu_pagesize(vma);
shift = __ilog2(psize); shift = __ilog2(psize);
tsize = shift - 10; tsize = shift - 10;
#endif
/* /*
* We can't be interrupted while we're setting up the MAS * We can't be interrupted while we're setting up the MAS
* regusters or after we've confirmed that no tlb exists. * regusters or after we've confirmed that no tlb exists.
......
...@@ -333,11 +333,6 @@ int init_new_context(struct task_struct *t, struct mm_struct *mm) ...@@ -333,11 +333,6 @@ int init_new_context(struct task_struct *t, struct mm_struct *mm)
mm->context.id = MMU_NO_CONTEXT; mm->context.id = MMU_NO_CONTEXT;
mm->context.active = 0; mm->context.active = 0;
#ifdef CONFIG_PPC_MM_SLICES
slice_set_user_psize(mm, mmu_virtual_psize);
#endif
return 0; return 0;
} }
......
...@@ -359,7 +359,7 @@ config PPC_BOOK3E_MMU ...@@ -359,7 +359,7 @@ config PPC_BOOK3E_MMU
config PPC_MM_SLICES config PPC_MM_SLICES
bool bool
default y if (!PPC_FSL_BOOK3E && PPC64 && HUGETLB_PAGE) || (PPC_STD_MMU_64 && PPC_64K_PAGES) default y if PPC_STD_MMU_64
default n default n
config PPC_HAVE_PMU_SUPPORT config PPC_HAVE_PMU_SUPPORT
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment