Thread (3 messages) 3 messages, 2 authors, 2017-09-26

Re: [PATCH] powerpc: fix compile error on 64K pages on 40x, 44x

From: Christophe LEROY <hidden>
Date: 2017-09-26 19:25:36


Le 26/09/2017 à 21:03, Christian Lamparter a écrit :
quoted hunk ↗ jump to hunk
The mmu context on the 40x, 44x does not define pte_frag
entry. This causes gcc abort the compilation due to:

setup-common.c: In function ‘setup_arch’:
setup-common.c:908: error: ‘mm_context_t’ has no ‘pte_frag’

This patch fixes the issue by adding additional guard
conditions, that limit the initialization to just
platforms that define the pte_frag variable in the
mmu context.

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
---
  arch/powerpc/kernel/setup-common.c | 4 +++-
  1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/arch/powerpc/kernel/setup-common.c b/arch/powerpc/kernel/setup-common.c
index 0ac741fae90e..436d42a7d761 100644
--- a/arch/powerpc/kernel/setup-common.c
+++ b/arch/powerpc/kernel/setup-common.c
@@ -904,7 +904,9 @@ void __init setup_arch(char **cmdline_p)
  #endif
  #endif
  
-#ifdef CONFIG_PPC_64K_PAGES
+#if defined(CONFIG_PPC_64K_PAGES) && \
+    defined(CONFIG_PPC_BOOK3S_64) && \
+    defined(CONFIG_PPC_BOOK3E_MMU)
There must be something wrong here.
BOOK3E_MMU is defined if BOOK3E_64 or FSL_BOOKE
BOOK3S_64 and BOOK3E_64 are mutually exclusive
FSL_BOOKE is PPC32 which is mutually exclusive from PPC64.

Therefore you can't have both BOOK3S_64 and BOOK3E_MMU at the same time

Christophe
  	init_mm.context.pte_frag = NULL;
  #endif
  #ifdef CONFIG_SPAPR_TCE_IOMMU
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help