In function 『a20_test』:
cc1: note: source object is likely at address zero
In function 『wrfs32』,
inlined from 『a20_test』 at arch/x86/boot/a20.c:74:2:
arch/x86/boot/boot.h:144:9: warning: array subscript 0 is outside array bounds of 『u32[0]』 {aka 『unsigned int[]』} [-Warray-bounds=]
In function 『a20_test』:
cc1: note: source object is likely at address zero
arch/x86/boot/bioscall.S: Assembler messages:
arch/x86/boot/bioscall.S:38: Warning: found `movsd'; assuming `movsl' was meant
arch/x86/boot/bioscall.S:73: Warning: found `movsd'; assuming `movsl' was meant
Unsupported relocation type: R_X86_64_PLT32 (4)
make[2]: *** [arch/x86/boot/compressed/Makefile:120: arch/x86/boot/compressed/vmlinux.relocs] Error 1
make[1]: *** [arch/x86/boot/Makefile:112: arch/x86/boot/compressed/vmlinux] Error 2
make: *** [arch/x86/Makefile:296: bzImage] Error 2
解決辦法:
https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b21ebf2fb4cde1618915a97cc773e287ff49173e
在arch/x86/kernel/machine_kexec_64.c,arch/x86/kernel/module.c和arch/x86/tools/relocs.c這三個文件中:
case R_X86_64_PC32:的下方添加case R_X86_64_PLT32: