On Tue, Dec 8, 2020 at 1:15 PM Arnd Bergmann <arnd@xxxxxxxxxx> wrote: > On Tue, Dec 1, 2020 at 10:37 PM 'Sami Tolvanen' via Clang Built Linux <clang-built-linux@xxxxxxxxxxxxxxxx> 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