Re: powerpc: build failures in Linus' tree

From: Stephen Rothwell
Date: Mon Aug 03 2020 - 00:10:26 EST


Hi Willy,

On Mon, 3 Aug 2020 05:45:47 +0200 Willy Tarreau <w@xxxxxx> wrote:
>
> 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:
> > >
> > > 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.

Our mails have crossed. I just sent a more comprehensive patch. I
think your patch would require a lot of build testing and even then may
fail for some CONFIG combination that we didn't test or added in the
future (or someone just made up).

--
Cheers,
Stephen Rothwell

Attachment: pgp74SSQqd9Rv.pgp
Description: OpenPGP digital signature