On 9/3/25 7:58 PM, Sam James wrote:
Michal Jires <[email protected]> writes:Check that must_remain_in_tu is partitioned correctly, and that refereced_from_asm is not renamed. gcc/lto/ChangeLog: * lto-partition.cc (lto_1_to_1_map): must_remain_in_tu check. (privatize_symbol_name_1): refereced_from_asm check.I get this when trying out the patches: # LDFINAL vmlinux.o sh /var/tmp/portage/sys-kernel/gentoo-kernel-6.16.4/work/linux-6.16/scripts/gcc-ld -flinker-output=nolto-rel -flto=jobserver -flto-partition=1to1 -fwhole-program -m elf_x86_64 --compre ss-debug-sections=zlib -z noexecstack --no-warn-rwx-segments -r -o vmlinux.o --whole-archive vmlinux.a --no-whole-archive --start-group --end-group ; ./tools/objtool/objtool --hacks= jump_label --hacks=noinstr --ibt --orc --retpoline --rethunk --sls --static-call --uaccess --link vmlinux.o x86_64-pc-linux-gnu-gcc -nostdlib -flinker-output=nolto-rel -flto=jobserver -flto-partition=1to1 -fwhole-program -Wl,-m,elf_x86_64 -Wl,--compress-debug-sections=zlib -Wl,-z,noexecstack - Wl,--no-warn-rwx-segments -r -o vmlinux.o -Wl,--whole-archive vmlinux.a -Wl,--no-whole-archive -Wl,--start-group -Wl,--end-group lto1: fatal error: Tried to privatize symbol sp_mod_init. compilation terminated. lto-wrapper: fatal error: x86_64-pc-linux-gnu-gcc returned 1 exit status compilation terminated. I haven't tried to figure out why though.
That means that I missed some optimization pass to restrict with refereced_from_asm.
Do you have some way I could reproduce it? I did try to build v6.16.4 kernel with this driver enabled and didn't encounter the issue.
Thanks, Michal
