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

powerpc/mm: Fix vma_mmu_pagesize() for radix

Radix doesn't use the slice framework to find the page size. Hence use
vma to find the page size.
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 5ed7ecd0
...@@ -719,14 +719,14 @@ unsigned long vma_mmu_pagesize(struct vm_area_struct *vma) ...@@ -719,14 +719,14 @@ unsigned long vma_mmu_pagesize(struct vm_area_struct *vma)
{ {
#ifdef CONFIG_PPC_MM_SLICES #ifdef CONFIG_PPC_MM_SLICES
unsigned int psize = get_slice_psize(vma->vm_mm, vma->vm_start); unsigned int psize = get_slice_psize(vma->vm_mm, vma->vm_start);
/* With radix we don't use slice, so derive it from vma*/
return 1UL << mmu_psize_to_shift(psize); if (!radix_enabled())
#else return 1UL << mmu_psize_to_shift(psize);
#endif
if (!is_vm_hugetlb_page(vma)) if (!is_vm_hugetlb_page(vma))
return PAGE_SIZE; return PAGE_SIZE;
return huge_page_size(hstate_vma(vma)); return huge_page_size(hstate_vma(vma));
#endif
} }
static inline bool is_power_of_4(unsigned long x) static inline bool is_power_of_4(unsigned long x)
......
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