Re: [RFC PATCH] PPC32: Fix build failure caused by missing dirty pte handlers

From: Luis Henriques
Date: Fri Feb 05 2016 - 11:04:19 EST


On Mon, Jan 25, 2016 at 09:22:58AM -0500, Pranith Kumar wrote:
> In 4.5-rc1, I am getting a build failure as follows:
>
> mm/memory.c: In function âdo_swap_pageâ:
> mm/memory.c:2573:9: error: implicit declaration of function âpte_mksoft_dirtyâ
> [-Werror=implicit-function-declaration]
> pte = pte_mksoft_dirty(pte);
>
> The soft dirty pte handlers are declared only for PPC64 on PPC_BOOK3S in
> arch/powerpc/include/asm/book3s/64/hash.h and missing in the 32-bit arch.
>
> Avoid this error by not setting HAVE_ARCH_SOFT_DIRTY for 32-bit system.
>

I am seeing this build failure too and I can confirm that this patch fixes
it. I would just add a

Fixes: 7207f43665b8 ("powerpc/mm: Add page soft dirty tracking")

to this patch. Feel free to add my 'Tested-by:'.

Cheers,
--
LuÃs


> Signed-off-by: Pranith Kumar <bobby.prani@xxxxxxxxx>
> ---
> arch/powerpc/Kconfig | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
> index e4824fd..21cb5c5 100644
> --- a/arch/powerpc/Kconfig
> +++ b/arch/powerpc/Kconfig
> @@ -557,7 +557,7 @@ choice
>
> config PPC_4K_PAGES
> bool "4k page size"
> - select HAVE_ARCH_SOFT_DIRTY if CHECKPOINT_RESTORE && PPC_BOOK3S
> + select HAVE_ARCH_SOFT_DIRTY if CHECKPOINT_RESTORE && PPC_BOOK3S && PPC64
>
> config PPC_16K_PAGES
> bool "16k page size"
> @@ -566,7 +566,7 @@ config PPC_16K_PAGES
> config PPC_64K_PAGES
> bool "64k page size"
> depends on !PPC_FSL_BOOK3E && (44x || PPC_STD_MMU_64 || PPC_BOOK3E_64)
> - select HAVE_ARCH_SOFT_DIRTY if CHECKPOINT_RESTORE && PPC_BOOK3S
> + select HAVE_ARCH_SOFT_DIRTY if CHECKPOINT_RESTORE && PPC_BOOK3S && PPC64
>
> config PPC_256K_PAGES
> bool "256k page size"
> --
> 2.7.0
>