Re: [PATCH v2 09/11] powerpc/mm: define get_slice_psize() all the time

Aneesh Kumar K.V
2019-04-26T06:46:10Z

Christophe Leroy <christophe.leroy@c-s.fr> writes:

> get_slice_psize() can be defined regardless of CONFIG_PPC_MM_SLICES
> to avoid ifdefs
>

Reviewed-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>

> Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
> ---
> arch/powerpc/include/asm/slice.h | 5 +++++
> arch/powerpc/mm/hugetlbpage.c | 4 +---
> 2 files changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/arch/powerpc/include/asm/slice.h b/arch/powerpc/include/asm/slice.h
> index be8af667098f..c6f466f4c241 100644
> --- a/arch/powerpc/include/asm/slice.h
> +++ b/arch/powerpc/include/asm/slice.h
> @@ -36,6 +36,11 @@ void slice_setup_new_exec(void);
>
> static inline void slice_init_new_context_exec(struct mm_struct *mm) {}
>
> +static inline unsigned int get_slice_psize(struct mm_struct *mm, unsigned long addr)
> +{
> + return 0;
> +}
> +
> #endif /* CONFIG_PPC_MM_SLICES */
>
> #endif /* __ASSEMBLY__ */
> diff --git a/arch/powerpc/mm/hugetlbpage.c b/arch/powerpc/mm/hugetlbpage.c
> index 9e732bb2c84a..5f67e7a4d1cc 100644
> --- a/arch/powerpc/mm/hugetlbpage.c
> +++ b/arch/powerpc/mm/hugetlbpage.c
> @@ -578,14 +578,12 @@ unsigned long hugetlb_get_unmapped_area(struct file *file, unsigned long addr,
>
> unsigned long vma_mmu_pagesize(struct vm_area_struct *vma)
> {
> -#ifdef CONFIG_PPC_MM_SLICES
> /* With radix we don't use slice, so derive it from vma*/
> - if (!radix_enabled()) {
> + if (IS_ENABLED(CONFIG_PPC_MM_SLICES) && !radix_enabled()) {
> unsigned int psize = get_slice_psize(vma->vm_mm, vma->vm_start);
>
> return 1UL << mmu_psize_to_shift(psize);
> }
> -#endif
> return vma_kernel_pagesize(vma);
> }
>
> --
> 2.13.3