Re: [PATCH 5/5] crash: clean up CRASH_DUMP

From: Baoquan He
Date: Mon Jan 08 2024 - 22:51:04 EST


On 01/07/24 at 09:19pm, kernel test robot wrote:
> Hi Baoquan,
>
> kernel test robot noticed the following build errors:
>
> [auto build test ERROR on linus/master]
> [also build test ERROR on v6.7-rc8]
> [cannot apply to powerpc/next powerpc/fixes tip/x86/core arm64/for-next/core next-20240105]
> [If your patch is applied to the wrong git tree, kindly drop us a note.
> And when submitting patch, we suggest to use '--base' as documented in
> https://git-scm.com/docs/git-format-patch#_base_tree_information]
>
> url: https://github.com/intel-lab-lkp/linux/commits/Baoquan-He/kexec_core-move-kdump-related-codes-from-crash_core-c-to-kexec_core-c/20240105-223735
> base: linus/master
> patch link: https://lore.kernel.org/r/20240105103305.557273-6-bhe%40redhat.com
> patch subject: [PATCH 5/5] crash: clean up CRASH_DUMP
> :::::: branch date: 2 days ago
> :::::: commit date: 2 days ago
> config: x86_64-randconfig-122-20240106 (https://download.01.org/0day-ci/archive/20240107/202401071326.52yn9Ftd-lkp@xxxxxxxxx/config)
> compiler: ClangBuiltLinux clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240107/202401071326.52yn9Ftd-lkp@xxxxxxxxx/reproduce)
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@xxxxxxxxx>
> | Closes: https://lore.kernel.org/r/202401071326.52yn9Ftd-lkp@xxxxxxxxx/

Thanks for reporting.

I have reproduced these linking errors, will consier how to rearrange
code change and fix them. The thing splitting kdump out could be more
complicated than I thought.

>
> All errors (new ones prefixed by >>):
>
> >> ld.lld: error: undefined symbol: crashk_res
> >>> referenced by initramfs.c:638 (init/initramfs.c:638)
> >>> init/initramfs.o:(kexec_free_initrd) in archive vmlinux.a
> >>> referenced by initramfs.c:638 (init/initramfs.c:638)
> >>> init/initramfs.o:(kexec_free_initrd) in archive vmlinux.a
> >>> referenced by initramfs.c:0 (init/initramfs.c:0)
> >>> init/initramfs.o:(kexec_free_initrd) in archive vmlinux.a
> >>> referenced 77 more times
> --
> >> ld.lld: error: undefined symbol: parse_crashkernel
> >>> referenced by setup.c:479 (arch/x86/kernel/setup.c:479)
> >>> arch/x86/kernel/setup.o:(arch_reserve_crashkernel) in archive vmlinux.a
> --
> >> ld.lld: error: undefined symbol: crashk_low_res
> >>> referenced by machine_kexec_64.c:539 (arch/x86/kernel/machine_kexec_64.c:539)
> >>> arch/x86/kernel/machine_kexec_64.o:(kexec_mark_crashkres) in archive vmlinux.a
> >>> referenced by machine_kexec_64.c:539 (arch/x86/kernel/machine_kexec_64.c:539)
> >>> arch/x86/kernel/machine_kexec_64.o:(kexec_mark_crashkres) in archive vmlinux.a
> >>> referenced by machine_kexec_64.c:539 (arch/x86/kernel/machine_kexec_64.c:539)
> >>> arch/x86/kernel/machine_kexec_64.o:(kexec_mark_crashkres) in archive vmlinux.a
> >>> referenced 36 more times
> --
> >> ld.lld: error: undefined symbol: crash_update_vmcoreinfo_safecopy
> >>> referenced by kexec_core.c:522 (kernel/kexec_core.c:522)
> >>> kernel/kexec_core.o:(kimage_crash_copy_vmcoreinfo) in archive vmlinux.a
> >>> referenced by kexec_core.c:610 (kernel/kexec_core.c:610)
> >>> kernel/kexec_core.o:(kimage_free) in archive vmlinux.a
> --
> >> ld.lld: error: undefined symbol: crash_save_vmcoreinfo
> >>> referenced by kexec_core.c:1053 (kernel/kexec_core.c:1053)
> >>> kernel/kexec_core.o:(__crash_kexec) in archive vmlinux.a
> --
> >> ld.lld: error: undefined symbol: paddr_vmcoreinfo_note
> >>> referenced by kexec_core.c:1148 (kernel/kexec_core.c:1148)
> >>> kernel/kexec_core.o:(crash_prepare_elf64_headers) in archive vmlinux.a
> --
> >> ld.lld: error: undefined symbol: append_elf_note
> >>> referenced by kexec_core.c:1390 (kernel/kexec_core.c:1390)
> >>> kernel/kexec_core.o:(crash_save_cpu) in archive vmlinux.a
> --
> >> ld.lld: error: undefined symbol: final_note
> >>> referenced by kexec_core.c:1392 (kernel/kexec_core.c:1392)
> >>> kernel/kexec_core.o:(crash_save_cpu) in archive vmlinux.a
>
> --
> 0-DAY CI Kernel Test Service
> https://github.com/intel/lkp-tests/wiki
>