Regressions while building x86, S390 and riscv64 with hardening.config on the Linux next-20250730 and next-20250731.
Build pass with gcc-13 with hardening.config fails with gcc-8
Regression Analysis: - New regression? Yes - Reproducibility? Yes
First seen on the next-20250730 Good: next-20250729 Bad: next-20250730
Build regression: next-20250730 x86 gcc-8 hardening.config vmlinux symbol `.modinfo' required but not present Build regression: next-20250730 S390 gcc-8 hardening.config vmlinux symbol `.modinfo' required but not present Build regression: next-20250730 riscv64 gcc-8 hardening.config vmlinux symbol `__rela_dyn_end' required but not present
Reported-by: Linux Kernel Functional Testing lkft@linaro.org
## Build log x86 x86_64-linux-gnu-objcopy: vmlinux: symbol `.modinfo' required but not present x86_64-linux-gnu-objcopy:vmlinux: no symbols make[3]: *** [scripts/Makefile.vmlinux:97: vmlinux] Error 1 make[3]: Target '__default' not remade because of errors.
## Build log S390 s390x-linux-gnu-ld: .tmp_vmlinux1: warning: allocated section `.got.plt' not in segment s390x-linux-gnu-ld: .tmp_vmlinux2: warning: allocated section `.got.plt' not in segment s390x-linux-gnu-ld: vmlinux.unstripped: warning: allocated section `.got.plt' not in segment s390x-linux-gnu-objcopy: vmlinux: warning: allocated section `.got.plt' not in segment s390x-linux-gnu-objcopy: vmlinux: symbol `.modinfo' required but not present s390x-linux-gnu-objcopy:vmlinux: no symbols make[3]: *** [scripts/Makefile.vmlinux:97: vmlinux] Error
## Build log riscv64 riscv64-linux-gnu-objcopy: vmlinux.unstripped: warning: empty loadable segment detected at vaddr=0xffffffff81e5b000, is this intentional? riscv64-linux-gnu-objcopy: vmlinux: symbol `__rela_dyn_end' required but not present riscv64-linux-gnu-objcopy:vmlinux: no symbols make[3]: *** [scripts/Makefile.vmlinux:97: vmlinux] Error 1
## Source * Git tree: https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next.git * Git sha: 84b92a499e7eca54ba1df6f6c6e01766025943f1 * Git describe: next-20250731 * Project details: https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20250731 * Architectures: x86, s390, riscv * Toolchains: gcc-8 * Kconfigs: hardening.config
## Build * Build details 1: https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20250731/tes... * Build details 2: https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20250731/tes... * Build details 3: https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20250731/tes... * Build history: https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20250731/tes... * Build link: https://storage.tuxsuite.com/public/linaro/lkft/builds/30cmb9OdgONks9mQHuMJ5... * Kernel config: https://storage.tuxsuite.com/public/linaro/lkft/builds/30cmb9OdgONks9mQHuMJ5...
## Steps to reproduce * tuxmake --runtime podman --target-arch x86_64 --toolchain gcc-8 --kconfig defconfig \ --kconfig-add CONFIG_DEBUG_INFO_REDUCED=y \ --kconfig-add CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y \ --kconfig-add CONFIG_IGB=y \ --kconfig-add hardening.config
-- Linaro LKFT https://lkft.linaro.org
On Thu, Jul 31, 2025, at 15:32, Naresh Kamboju wrote:
Regressions while building x86, S390 and riscv64 with hardening.config on the Linux next-20250730 and next-20250731.
Build pass with gcc-13 with hardening.config fails with gcc-8
Regression Analysis:
- New regression? Yes
- Reproducibility? Yes
First seen on the next-20250730 Good: next-20250729 Bad: next-20250730
Build regression: next-20250730 x86 gcc-8 hardening.config vmlinux symbol `.modinfo' required but not present Build regression: next-20250730 S390 gcc-8 hardening.config vmlinux symbol `.modinfo' required but not present Build regression: next-20250730 riscv64 gcc-8 hardening.config vmlinux symbol `__rela_dyn_end' required but not present
Reported-by: Linux Kernel Functional Testing lkft@linaro.org
My guess is that this is caused by 94564d1bb059 ("kbuild: keep .modinfo section in vmlinux.unstripped")
See also https://lore.kernel.org/all/202507310505.tEYm1za7-lkp@intel.com/ https://lore.kernel.org/all/20250728135753.432695A72-agordeev@linux.ibm.com/
Reverting 94564d1bb059 solved the problem for me on arm64.
Arnd