Re: [PATCH] kbuild: switch to thin archives

From: Nicholas Piggin
Date: Mon Jun 19 2017 - 03:45:43 EST


On Sun, 18 Jun 2017 12:04:26 +0200
Pavel Machek <pavel@xxxxxx> wrote:

> On Fri 2017-06-02 22:54:54, Nicholas Piggin wrote:
> > Switch from incremental build to thin archives for packaging built-in.o.
> > binutils version must be bumped to 2.20. Proposed patch for 4.13.
> >
> > Signed-off-by: Nicholas Piggin <npiggin@xxxxxxxxx>
>
> You should explain any advantage this is supposed to have.

Hi Pavel,

You're right, sorry for this, I was spamming the list with a quick
hack to try to get 0day to pick up the patch.

Most of the discussion has been going on in other patch series (check
linux-kbuild).

There are 3 main categories of advantages.

First is reduced size of intermediate artifacts in the build output
tree.

Second is that incremental linking constrains the linker because it
has to assemble each section in the output as a sequence of those
section from the inputs. So the more incremental linking, the more
you constrain the linker, and this can end up resulting in link fail
with large kernels on some architectures.

Third is that some link-time optimizations are not compatible or
not very optimal with incremental linking, whereas thin archives
is much more amenable to such things.

Thanks,
Nick