Re: [PATCH v5 18/22] powerpc/mm: Extend pte_fragment functionality to nohash/32

From: Aneesh Kumar K.V
Date: Wed Sep 26 2018 - 05:01:36 EST


On 9/26/18 1:40 PM, Christophe LEROY wrote:


Le 26/09/2018 Ã 04:48, Aneesh Kumar K.V a ÃcritÂ:
Christophe Leroy <christophe.leroy@xxxxxx> writes:

In order to allow the 8xx to handle pte_fragments, this patch
extends the use of pte_fragments to nohash/32 platforms.

Signed-off-by: Christophe Leroy <christophe.leroy@xxxxxx>
---
 arch/powerpc/include/asm/mmu_context.h | 2 +-
 arch/powerpc/include/asm/nohash/32/mmu-40x.h | 1 +
 arch/powerpc/include/asm/nohash/32/mmu-44x.h | 1 +
 arch/powerpc/include/asm/nohash/32/mmu-8xx.h | 1 +
 arch/powerpc/include/asm/nohash/32/mmu.h | 4 ++-
 arch/powerpc/include/asm/nohash/32/pgalloc.h | 52 +++++++++++++---------------
 arch/powerpc/include/asm/nohash/32/pgtable.h | 11 ++++--
 arch/powerpc/include/asm/nohash/mmu-book3e.h | 1 +
 arch/powerpc/mm/Makefile | 3 ++
 arch/powerpc/mm/mmu_context_nohash.c | 14 ++++++++
 10 files changed, 57 insertions(+), 33 deletions(-)

diff --git a/arch/powerpc/include/asm/mmu_context.h b/arch/powerpc/include/asm/mmu_context.h
index b2f89b621b15..7f2c37a3f99d 100644
--- a/arch/powerpc/include/asm/mmu_context.h
+++ b/arch/powerpc/include/asm/mmu_context.h
@@ -222,7 +222,7 @@ static inline int arch_dup_mmap(struct mm_struct *oldmm,
ÂÂÂÂÂ return 0;
 }
-#ifndef CONFIG_PPC_BOOK3S_64
+#if defined(CONFIG_PPC_BOOK3E_64) || defined(CONFIG_PPC_BOOK3S_32)
 static inline void arch_exit_mmap(struct mm_struct *mm)
 {
 }


Can we do that with #ifndef arch_exit_mmap? This should handle every
platform that doesn't use pte_frag right?

Yes we can, that means moving arch_exit_mmap() prototype in platform specific mmu headers, and adding there a #define arch_exit_mmap arch_exit_mmap

Is that your idea ?


yes. that way it is easy to find out which platforms really want that to be a different.

-aneesh