tree: https://git.kernel.org/pub/scm/linux/kernel/git/jpoimboe/linux.git s390 head: 707138feb116e8b8d987cadee6f2048b1ee8c631 commit: 707138feb116e8b8d987cadee6f2048b1ee8c631 [2/2] s390: Compile relocatable kernel without -fPIE config: s390-randconfig-r014-20220904 compiler: s390-linux-gcc (GCC) 12.1.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://git.kernel.org/pub/scm/linux/kernel/git/jpoimboe/linux.git/commit/?id=707138feb116e8b8d987cadee6f2048b1ee8c631 git remote add jpoimboe https://git.kernel.org/pub/scm/linux/kernel/git/jpoimboe/linux.git git fetch --no-tags jpoimboe s390 git checkout 707138feb116e8b8d987cadee6f2048b1ee8c631 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=s390 SHELL=/bin/bash If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot All errors (new ones prefixed by >>): s390-linux-ld: arch/s390/boot/startup.o: in function `kaslr_adjust_relocs': >> arch/s390/boot/startup.c:86: undefined reference to `__vmlinux_relocs_64_start' >> s390-linux-ld: arch/s390/boot/startup.c:87: undefined reference to `__vmlinux_relocs_64_end' >> s390-linux-ld: arch/s390/boot/startup.c:87: undefined reference to `__vmlinux_relocs_64_end' vim +86 arch/s390/boot/startup.c 77 78 static void kaslr_adjust_relocs(unsigned long offset) 79 { 80 int *reloc; 81 unsigned long min_addr = vmlinux.default_lma; 82 unsigned long max_addr = min_addr + vmlinux.image_size; 83 long loc; 84 85 /* Adjust R_390_64 relocations */ > 86 for (reloc = __vmlinux_relocs_64_start; > 87 reloc < __vmlinux_relocs_64_end && *reloc; 88 reloc++) { 89 loc = (long)*reloc + offset; 90 91 if (loc < min_addr || loc > max_addr) 92 error("64-bit relocation outside of kernel!\n"); 93 94 *(u64 *)loc += offset; 95 } 96 } 97 -- 0-DAY CI Kernel Test Service https://01.org/lkp