Re: powerpc: build failures in Linus' tree

From: Willy Tarreau
Date: Sun Aug 02 2020 - 23:46:18 EST


Hi again Stephen,

On Sun, Aug 02, 2020 at 07:20:19PM +0200, Willy Tarreau wrote:
> On Sun, Aug 02, 2020 at 08:48:42PM +1000, Stephen Rothwell wrote:
> > Hi all,
> >
> > We are getting build failures in some PowerPC configs for Linus' tree.
> > See e.g. http://kisskb.ellerman.id.au/kisskb/buildresult/14306515/
> >
> > In file included from /kisskb/src/arch/powerpc/include/asm/paca.h:18,
> > from /kisskb/src/arch/powerpc/include/asm/percpu.h:13,
> > from /kisskb/src/include/linux/random.h:14,
> > from /kisskb/src/include/linux/net.h:18,
> > from /kisskb/src/net/ipv6/ip6_fib.c:20:
> > /kisskb/src/arch/powerpc/include/asm/mmu.h:139:22: error: unknown type name 'next_tlbcam_idx'
> > 139 | DECLARE_PER_CPU(int, next_tlbcam_idx);
> >
> > I assume this is caused by commit
> >
> > 1c9df907da83 ("random: fix circular include dependency on arm64 after addition of percpu.h")
> >
> > But I can't see how, sorry.
>
> So there, asm/mmu.h includes asm/percpu.h, which includes asm/paca.h, which
> includes asm/mmu.h.
>
> I suspect that we can remove asm/paca.h from asm/percpu.h as it *seems*
> to be only used by the #define __my_cpu_offset but I don't know if anything
> will break further, especially if this __my_cpu_offset is used anywhere
> without this paca definition.

I tried this and it fixed 5.8 for me with your config above. I'm appending
a patch that does just this. I didn't test other configs as I don't know
which ones to test though. If it fixes the problem for you, maybe it can
be picked by the PPC maintainers.

Willy