Re: [PATCH v8 00/16] Add support for Clang LTO
From: Arnd Bergmann <arnd@kernel.org>
Date: 2020-12-08 13:55:53
Also in:
linux-arch, linux-kbuild, linux-pci, lkml
On Tue, Dec 8, 2020 at 1:15 PM Arnd Bergmann [off-list ref] wrote:
On Tue, Dec 1, 2020 at 10:37 PM 'Sami Tolvanen' via Clang Built Linux [off-list ref] wrote: - many builds complain about thousands of duplicate symbols in the kernel, e.g. ld.lld: error: duplicate symbol: qrtr_endpoint_post >>> defined in net/qrtr/qrtr.lto.o >>> defined in net/qrtr/qrtr.o ld.lld: error: duplicate symbol: init_module >>> defined in crypto/842.lto.o >>> defined in crypto/842.o ld.lld: error: duplicate symbol: init_module >>> defined in net/netfilter/nfnetlink_log.lto.o >>> defined in net/netfilter/nfnetlink_log.o ld.lld: error: duplicate symbol: vli_from_be64 >>> defined in crypto/ecc.lto.o >>> defined in crypto/ecc.o ld.lld: error: duplicate symbol: __mod_of__plldig_clk_id_device_table >>> defined in drivers/clk/clk-plldig.lto.o >>> defined in drivers/clk/clk-plldig.o
A small update here: I see this behavior with every single module
build, including 'tinyconfig' with one module enabled, and 'defconfig'.
I tuned the randconfig setting using KCONFIG_PROBABILITY=2:2:1
now, which only enables a few symbols. With this I see faster build
times (obvioulsy), aroudn 30 seconds per kernel, and all small builds
with CONFIG_MODULES disabled so far succeed.
It appears that the problems I saw originally only happen for larger
configurations, or possibly a combination of Kconfig options that don't
happen that often on randconfig builds with low
KCONFIG_PROBABILITY.
Arnd
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel