From: Nicholas Piggin <npiggin@gmail.com>
To: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Linux Kbuild mailing list <linux-kbuild@vger.kernel.org>,
linux-arch <linux-arch@vger.kernel.org>,
Michal Marek <mmarek@suse.com>,
Linus Torvalds <torvalds@linux-foundation.org>,
Stephen Rothwell <sfr@canb.auug.org.au>,
kbuild test robot <fengguang.wu@intel.com>,
Josh Triplett <josh@joshtriplett.org>,
Nicolas Pitre <nicolas.pitre@linaro.org>,
Arnd Bergmann <arnd@arndb.de>
Subject: Re: [PATCH 1/5] kbuild: thin archives final link close --whole-archives option
Date: Wed, 21 Jun 2017 14:04:45 +1000 [thread overview]
Message-ID: <20170621140445.4d6fd92a@roar.ozlabs.ibm.com> (raw)
In-Reply-To: <CAK7LNATPyoVcsDtFjRhdmFh7v_HE9F=2GVX=z+XVWV2fXsEukA@mail.gmail.com>
On Wed, 21 Jun 2017 12:29:33 +0900
Masahiro Yamada <yamada.masahiro@socionext.com> wrote:
> Hi Nicholas,
>
>
> 2017-06-21 11:47 GMT+09:00 Nicholas Piggin <npiggin@gmail.com>:
> > I wonder if the names could be a bit more descriptive?
> >
> > libs-y-liba
> > libs-y-builtin
> >
> > ?
>
> I do not have a strong opinion. Either way sounds OK to me.
> If you like, I can fix it up.
I have nothing against it if you want to clean it up. You're the
maintainer so whatever you prefer :)
> I think you mentioned LD_DEAD_CODE_DATA_ELIMINATION is under way for
> ARM and x86.
Yes it seems to be quite successful. ARM and MIPS people are looking
at it, I have it working for powerpc and x86 quite easily. I will
send patches to arch maintainers if we get these thin archives changes
merged in the next window.
> If we can switch all architectures, lib.a will turn into built-in.o. Correct?
> (I am not sure how difficult the global conversion is.)
Yes I think it should be no longer necessary.
The only problem with LD_DEAD_CODE_DATA_ELIMINATION is that it overloads
elf section names to pass data to the linker, so it's not 100% transparent.
In practice it's been very minor changes. On balance it will end up being
better than a whole lot of conditional compiling and linking workarounds
such as the one you mention below.
> BTW, I saw abuse of lib.a in
> https://patchwork.kernel.org/patch/9768439/
>
> I see it in linux-next.
>
> commit 06e226c7fb233f676b01b144d0b321ebe510fdcd
> Author: Stephen Boyd <sboyd@codeaurora.org>
> Date: Fri Jun 2 15:30:06 2017 -0700
>
> clk: sunxi-ng: Move all clock types to a library
>
>
>
>
> Now drivers/clk/sunxi-ng/lib.a
> will go into thin archives.
> The result might be different from what they expect...
Yes I see. With thin archives, that is just going to cause the
same behaviour as built-in.o (everything will be linked). So the
build should not break, but they won't get savings.
Does it even save space with incremental linking? If the lib.a gets
linked into drivers/built-in.o, I wonder what happens then?
Thanks,
Nick
next prev parent reply other threads:[~2017-06-21 4:05 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-09 5:24 [PATCH 0/5] move everyone over to thin archives Nicholas Piggin
2017-06-09 5:24 ` [PATCH 1/5] kbuild: thin archives final link close --whole-archives option Nicholas Piggin
2017-06-19 6:16 ` Masahiro Yamada
2017-06-19 6:51 ` Nicholas Piggin
2017-06-19 8:14 ` Masahiro Yamada
2017-06-19 8:27 ` Nicholas Piggin
2017-06-19 8:35 ` Masahiro Yamada
2017-06-19 15:52 ` Nicholas Piggin
2017-06-19 23:48 ` Josh Triplett
2017-06-21 1:17 ` Masahiro Yamada
2017-06-21 2:47 ` Nicholas Piggin
2017-06-21 3:29 ` Masahiro Yamada
2017-06-21 4:04 ` Nicholas Piggin [this message]
2017-06-21 7:15 ` Arnd Bergmann
2017-06-21 9:16 ` Nicholas Piggin
2017-06-21 10:21 ` Arnd Bergmann
2017-06-21 10:38 ` Nicholas Piggin
2017-06-21 10:49 ` Arnd Bergmann
2017-06-21 10:51 ` Arnd Bergmann
2017-06-21 11:10 ` Nicholas Piggin
2017-06-21 11:32 ` Arnd Bergmann
2017-06-21 12:02 ` Nicholas Piggin
2017-06-21 12:21 ` Arnd Bergmann
2017-06-21 16:19 ` Stephen Boyd
2017-06-21 18:08 ` Nicholas Piggin
2017-06-21 20:55 ` Arnd Bergmann
2017-06-22 6:18 ` Maxime Ripard
2017-06-22 15:50 ` Nicholas Piggin
2017-06-23 5:31 ` Masahiro Yamada
2017-06-23 14:57 ` Maxime Ripard
2017-06-23 15:04 ` Arnd Bergmann
2017-06-25 3:55 ` Masahiro Yamada
2017-06-27 15:42 ` Maxime Ripard
2017-06-21 20:52 ` Arnd Bergmann
2017-06-21 21:30 ` Nicholas Piggin
2017-06-21 21:44 ` Arnd Bergmann
2017-06-22 16:12 ` Nicholas Piggin
2017-06-09 5:24 ` [PATCH 2/5] kbuild: thin archives use P option to ar Nicholas Piggin
2017-06-19 6:17 ` Masahiro Yamada
2017-06-19 6:52 ` Nicholas Piggin
2017-06-09 5:24 ` [PATCH 3/5] sh: thin archives fix linking Nicholas Piggin
2017-06-19 6:19 ` Masahiro Yamada
2017-06-21 22:09 ` Rob Landley
2017-06-09 5:24 ` [PATCH 4/5] x86/um: thin archives build fix Nicholas Piggin
2017-06-19 6:21 ` Masahiro Yamada
2017-06-09 5:24 ` [PATCH 5/5] kbuild: thin archives make default for all archs Nicholas Piggin
2017-06-19 6:22 ` Masahiro Yamada
2017-06-19 6:55 ` Nicholas Piggin
2017-06-17 13:10 ` [PATCH 0/5] move everyone over to thin archives Nicholas Piggin
2017-06-19 6:30 ` Masahiro Yamada
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170621140445.4d6fd92a@roar.ozlabs.ibm.com \
--to=npiggin@gmail.com \
--cc=arnd@arndb.de \
--cc=fengguang.wu@intel.com \
--cc=josh@joshtriplett.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=mmarek@suse.com \
--cc=nicolas.pitre@linaro.org \
--cc=sfr@canb.auug.org.au \
--cc=torvalds@linux-foundation.org \
--cc=yamada.masahiro@socionext.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox