[V2, 66/68] powerpc/mm/radix: Add THP support for 4k linux page size

Michael Ellerman mpe at ellerman.id.au
Thu Apr 28 14:56:47 AEST 2016


On Sat, 2016-09-04 at 06:14:02 UTC, "Aneesh Kumar K.V" wrote:

Missing change log.

> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar at linux.vnet.ibm.com>
> 
> diff --git a/arch/powerpc/include/asm/book3s/64/hash-4k.h b/arch/powerpc/include/asm/book3s/64/hash-4k.h
> index bb3d8539bb1b..d915788d5074 100644
> --- a/arch/powerpc/include/asm/book3s/64/hash-4k.h
> +++ b/arch/powerpc/include/asm/book3s/64/hash-4k.h
> @@ -50,6 +50,65 @@ static inline int hl_hugepd_ok(hugepd_t hpd)
>  }
>  #endif
>  
> +#ifdef CONFIG_TRANSPARENT_HUGEPAGE
> +
> +static inline char *get_hpte_slot_array(pmd_t *pmdp)
> +{
> +	BUG();
> +	return NULL;
> +}

...

> diff --git a/arch/powerpc/platforms/Kconfig.cputype b/arch/powerpc/platforms/Kconfig.cputype
> index 53299182dba9..ad9c77399aab 100644
> --- a/arch/powerpc/platforms/Kconfig.cputype
> +++ b/arch/powerpc/platforms/Kconfig.cputype
> @@ -72,7 +72,7 @@ config PPC_BOOK3S_64
>  	select PPC_FPU
>  	select PPC_HAVE_PMU_SUPPORT
>  	select SYS_SUPPORTS_HUGETLBFS
> -	select HAVE_ARCH_TRANSPARENT_HUGEPAGE if PPC_64K_PAGES
> +	select HAVE_ARCH_TRANSPARENT_HUGEPAGE


How is this meant to work?

It appears to allow me to build a 4K kernel with THP which will then BUG() as
soon as I run it on hash?

I assume you'll tell me there's some mechanism somewhere that prevents that from
happening, but what is it?

cheers


More information about the Linuxppc-dev mailing list