[PATCH] powerpc/64s: Only set HAVE_ARCH_UNMAPPED_AREA when CONFIG_PPC_64S_HASH_MMU is set

Christophe Leroy posted 1 patch 1 year, 11 months ago
arch/powerpc/include/asm/book3s/64/slice.h | 2 ++
1 file changed, 2 insertions(+)
[PATCH] powerpc/64s: Only set HAVE_ARCH_UNMAPPED_AREA when CONFIG_PPC_64S_HASH_MMU is set
Posted by Christophe Leroy 1 year, 11 months ago
When CONFIG_PPC_64S_HASH_MMU is not set, slice.c is not built and
arch_get_unmapped_area() and arch_get_unmapped_area_topdown() are
not provided because RADIX uses the generic ones.

Therefore, neither set HAVE_ARCH_UNMAPPED_AREA nor
HAVE_ARCH_UNMAPPED_AREA_TOPDOWN.

Reported-by: Laurent Dufour <ldufour@linux.ibm.com>
Fixes: ab57bd7570d4 ("powerpc/mm: Move get_unmapped_area functions to slice.c")
Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
---
 arch/powerpc/include/asm/book3s/64/slice.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/powerpc/include/asm/book3s/64/slice.h b/arch/powerpc/include/asm/book3s/64/slice.h
index b8eb4ad271b9..5fbe18544cbd 100644
--- a/arch/powerpc/include/asm/book3s/64/slice.h
+++ b/arch/powerpc/include/asm/book3s/64/slice.h
@@ -4,11 +4,13 @@
 
 #ifndef __ASSEMBLY__
 
+#ifdef CONFIG_PPC_64S_HASH_MMU
 #ifdef CONFIG_HUGETLB_PAGE
 #define HAVE_ARCH_HUGETLB_UNMAPPED_AREA
 #endif
 #define HAVE_ARCH_UNMAPPED_AREA
 #define HAVE_ARCH_UNMAPPED_AREA_TOPDOWN
+#endif
 
 #define SLICE_LOW_SHIFT		28
 #define SLICE_LOW_TOP		(0x100000000ul)
-- 
2.35.3
Re: [PATCH] powerpc/64s: Only set HAVE_ARCH_UNMAPPED_AREA when CONFIG_PPC_64S_HASH_MMU is set
Posted by Michael Ellerman 1 year, 10 months ago
On Tue, 24 May 2022 07:42:05 +0200, Christophe Leroy wrote:
> When CONFIG_PPC_64S_HASH_MMU is not set, slice.c is not built and
> arch_get_unmapped_area() and arch_get_unmapped_area_topdown() are
> not provided because RADIX uses the generic ones.
> 
> Therefore, neither set HAVE_ARCH_UNMAPPED_AREA nor
> HAVE_ARCH_UNMAPPED_AREA_TOPDOWN.
> 
> [...]

Applied to powerpc/next.

[1/1] powerpc/64s: Only set HAVE_ARCH_UNMAPPED_AREA when CONFIG_PPC_64S_HASH_MMU is set
      https://git.kernel.org/powerpc/c/c85ab4fe33065ca1fdcac26f0c00c837fe727ba7

cheers
Re: [PATCH] powerpc/64s: Only set HAVE_ARCH_UNMAPPED_AREA when CONFIG_PPC_64S_HASH_MMU is set
Posted by Laurent Dufour 1 year, 11 months ago
On 24/05/2022, 07:42:05, Christophe Leroy wrote:
> When CONFIG_PPC_64S_HASH_MMU is not set, slice.c is not built and
> arch_get_unmapped_area() and arch_get_unmapped_area_topdown() are
> not provided because RADIX uses the generic ones.
> 
> Therefore, neither set HAVE_ARCH_UNMAPPED_AREA nor
> HAVE_ARCH_UNMAPPED_AREA_TOPDOWN.
> 
> Reported-by: Laurent Dufour <ldufour@linux.ibm.com>
> Fixes: ab57bd7570d4 ("powerpc/mm: Move get_unmapped_area functions to slice.c")
> Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
> 

FWIW,
Tested-by: Laurent Dufour <ldufour@linux.ibm.com>

---
>  arch/powerpc/include/asm/book3s/64/slice.h | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/arch/powerpc/include/asm/book3s/64/slice.h b/arch/powerpc/include/asm/book3s/64/slice.h
> index b8eb4ad271b9..5fbe18544cbd 100644
> --- a/arch/powerpc/include/asm/book3s/64/slice.h
> +++ b/arch/powerpc/include/asm/book3s/64/slice.h
> @@ -4,11 +4,13 @@
>  
>  #ifndef __ASSEMBLY__
>  
> +#ifdef CONFIG_PPC_64S_HASH_MMU
>  #ifdef CONFIG_HUGETLB_PAGE
>  #define HAVE_ARCH_HUGETLB_UNMAPPED_AREA
>  #endif
>  #define HAVE_ARCH_UNMAPPED_AREA
>  #define HAVE_ARCH_UNMAPPED_AREA_TOPDOWN
> +#endif
>  
>  #define SLICE_LOW_SHIFT		28
>  #define SLICE_LOW_TOP		(0x100000000ul)