Le 26/09/2018 à 04:48, Aneesh Kumar K.V a écrit :
Christophe Leroy <christophe.le...@c-s.fr> 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.le...@c-s.fr>
---
  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 ?

Christophe




diff --git a/arch/powerpc/include/asm/nohash/32/mmu-40x.h 
b/arch/powerpc/include/asm/nohash/32/mmu-40x.h
index 74f4edb5916e..7c77ceed71d6 100644
--- a/arch/powerpc/include/asm/nohash/32/mmu-40x.h
+++ b/arch/powerpc/include/asm/nohash/32/mmu-40x.h
@@ -58,6 +58,7 @@ typedef struct {
        unsigned int    id;
        unsigned int    active;
        unsigned long   vdso_base;

-aneesh

Reply via email to