Re: Linux 4.20-rc5: Lab setup broken by build-related x86 change

From: Rafael J. Wysocki
Date: Wed Dec 05 2018 - 07:15:26 EST


On Monday, December 3, 2018 12:30:24 AM CET Linus Torvalds wrote:
> Hmm.. I'd like to say it was a normal week, but I'd be lying. rc5 is
> the biggest rc so far (with the obvious exception of rc1), and it
> looks fairly unusual in the diffstat too, with almost a third being
> arch updates. Yes, another third is drivers (normal), but even there
> almost half is in sound. The rest is tooling, mm, core networking and
> some fs updates.
>
> So it all looks a bit odd, although none of it is hugely _alarming_.
> One of the reasons the arch side is a bit bigger than usual at this
> stage is that we got the STIPB performance regression sorted out, for
> example.

One of the changes apparently related to this broke my lab setup in which
I build everything on a central machine, export the build directory over
NFS (read-only) to some other systems and run "make modules_install" on
them from there.

After commit

commit 4cd24de3a0980bf3100c9dcb08ef65ca7c31af48
Author: Zhenzhong Duan <zhenzhong.duan@xxxxxxxxxx>
Date: Fri Nov 2 01:45:41 2018 -0700

x86/retpoline: Make CONFIG_RETPOLINE depend on compiler support

Since retpoline capable compilers are widely available, make
CONFIG_RETPOLINE hard depend on the compiler capability.

Break the build when CONFIG_RETPOLINE is enabled and the compiler does not
support it. Emit an error message in that case:

"arch/x86/Makefile:226: *** You are building kernel with non-retpoline
compiler, please update your compiler.. Stop."

[dwmw: Fail the build with non-retpoline compiler]

which is new in -rc5, the "make modules_install" step fails with the above
message, which doesn't make sense even, because the compiler on the clients
is the same as on the central machine in the lab and it can do retpolines
just fine.

Obviously this is due to the RETPOLINE_CFLAGS check added by the commit above.
Annoying that. :-)

Cheers,
Rafael