On Thu, Feb 11, 2021 at 10:46:05AM -0800, Nick Desaulniers wrote:
On Thu, Feb 11, 2021 at 5:55 AM Greg Kroah-Hartman gregkh@linuxfoundation.org wrote:
On Thu, Feb 11, 2021 at 09:32:03PM +0800, Xi Ruoyao wrote:
Hi all,
The latest GNU assembler (binutils-2.36.1) is removing unused section symbols like Clang [1]. So linux-5.10.15 can't be built with binutils-2.36.1 now. It has been reported as https://bugzilla.kernel.org/show_bug.cgi?id=211693.
Xi, Happy Lunar New Year to you, too, and thanks for the report. Did you observe such segfaults for older branches of stable?
2.36 of binutils fails to build the 4.4.y tree right now as well, but as objtool isn't there, I don't know what to do about it :(
Greg, There may be multiple issues in the latest binutils release for the kernel; we should still avoid segfaults in host tools so I do recommend considering this patch for inclusion at least into 5.10.y. Arnd's report in https://github.com/ClangBuiltLinux/linux/issues/1207 mentions this was found via randconfig testing, so likely some set of configs is needed to reproduce reliably.
Do you have more info about the failure you're observing? Trolling lore, I only see: https://lore.kernel.org/stable/YCLeJcQFsDIsrAEc@kroah.com/ (Maybe it was reported on a different list; I only searched stable ML).
I didn't report it anywhere.
Here's the output of doing a 'make allmodconfig' on the latest 4.4.257 release failing with binutils 2.36
Cannot find symbol for section 8: .text.unlikely. kernel/kexec_file.o: failed make[1]: *** [scripts/Makefile.build:277: kernel/kexec_file.o] Error 1 make[1]: *** Deleting file 'kernel/kexec_file.o' make[1]: *** Waiting for unfinished jobs....
4.9.257 works fine, probably because we are using objtool?
Any ideas are appreciated.
thanks,
greg k-h