[PATCH v2 16/23] powerpc: use asm-generic/mmu_context.h for no-op implementations

Michael Ellerman mpe at ellerman.id.au
Tue Sep 1 17:30:59 AEST 2020


Nicholas Piggin <npiggin at gmail.com> writes:
> Cc: Michael Ellerman <mpe at ellerman.id.au>
> Cc: Benjamin Herrenschmidt <benh at kernel.crashing.org>
> Cc: Paul Mackerras <paulus at ozlabs.org>
> Cc: linuxppc-dev at lists.ozlabs.org
> Signed-off-by: Nicholas Piggin <npiggin at gmail.com>
> ---
>  arch/powerpc/include/asm/mmu_context.h | 22 +++++++---------------
>  1 file changed, 7 insertions(+), 15 deletions(-)

Acked-by: Michael Ellerman <mpe at ellerman.id.au> (powerpc)

cheers


> diff --git a/arch/powerpc/include/asm/mmu_context.h b/arch/powerpc/include/asm/mmu_context.h
> index 7f3658a97384..bc22e247ab55 100644
> --- a/arch/powerpc/include/asm/mmu_context.h
> +++ b/arch/powerpc/include/asm/mmu_context.h
> @@ -14,7 +14,9 @@
>  /*
>   * Most if the context management is out of line
>   */
> +#define init_new_context init_new_context
>  extern int init_new_context(struct task_struct *tsk, struct mm_struct *mm);
> +#define destroy_context destroy_context
>  extern void destroy_context(struct mm_struct *mm);
>  #ifdef CONFIG_SPAPR_TCE_IOMMU
>  struct mm_iommu_table_group_mem_t;
> @@ -235,27 +237,15 @@ static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next,
>  }
>  #define switch_mm_irqs_off switch_mm_irqs_off
>  
> -
> -#define deactivate_mm(tsk,mm)	do { } while (0)
> -
> -/*
> - * After we have set current->mm to a new value, this activates
> - * the context for the new mm so we see the new mappings.
> - */
> -static inline void activate_mm(struct mm_struct *prev, struct mm_struct *next)
> -{
> -	switch_mm(prev, next, current);
> -}
> -
> -/* We don't currently use enter_lazy_tlb() for anything */
> +#ifdef CONFIG_PPC_BOOK3E_64
> +#define enter_lazy_tlb enter_lazy_tlb
>  static inline void enter_lazy_tlb(struct mm_struct *mm,
>  				  struct task_struct *tsk)
>  {
>  	/* 64-bit Book3E keeps track of current PGD in the PACA */
> -#ifdef CONFIG_PPC_BOOK3E_64
>  	get_paca()->pgd = NULL;
> -#endif
>  }
> +#endif
>  
>  extern void arch_exit_mmap(struct mm_struct *mm);
>  
> @@ -298,5 +288,7 @@ static inline int arch_dup_mmap(struct mm_struct *oldmm,
>  	return 0;
>  }
>  
> +#include <asm-generic/mmu_context.h>
> +
>  #endif /* __KERNEL__ */
>  #endif /* __ASM_POWERPC_MMU_CONTEXT_H */
> -- 
> 2.23.0


More information about the Linuxppc-dev mailing list