Re: [PATCH 20/21] Kbuild, lto: Add Link Time Optimization support

From: Andi Kleen
Date: Fri Jan 26 2018 - 19:56:22 EST


On Sat, Jan 27, 2018 at 01:15:49AM +0100, Arnd Bergmann wrote:
> On Mon, Nov 27, 2017 at 10:34 PM, Andi Kleen <andi@xxxxxxxxxxxxxx> wrote:
> > From: Andi Kleen <ak@xxxxxxxxxxxxxxx>
> > - Add a new LDFINAL variable that controls the final link
> > for vmlinux or module. In this case we call gcc-ld instead
> > of ld, to run the LTO step.
>
> When I tried this out on allmodconfig (following the lwn article), I ran into
> a number of warnings:

Thanks for testing. Yes it's a known issue: during one module build
when modpost looks at the file it is still in LTO format, and
modpost doesn't understand the LTO symbol table. I had a patch
to teach it to it at some point, but it got lost somewhere.
The LLVM LTO patchkit has a different solution that actually
fixes the sequence to run modpost only after a LTO final link,
but I haven't gotten around to port that one.

It seems to work already for the single file modules.

-Andi