| From: Baoquan He <bhe@redhat.com> |
| Date: Thu, 30 Nov 2023 16:22:46 +0800 |
| Subject: LoongArch: change dependency of object files |
| |
| Currently, in arch/loongarch/kernel/Makefile, building machine_kexec.o |
| relocate_kernel.o depends on CONFIG_KEXEC. |
| |
| Whereas, since we will drop the select of KEXEC for CRASH_DUMP in |
| kernel/Kconfig.kexec, compiling error will be triggered if below config |
| items are set: |
| |
| === |
| CONFIG_CRASH_CORE=y |
| CONFIG_KEXEC_CORE=y |
| CONFIG_CRASH_DUMP=y |
| === |
| |
| --------------------------------------------------------------- |
| loongarch64-linux-ld: kernel/kexec_core.o: in function `.L209': |
| >> kexec_core.c:(.text+0x1660): undefined reference to `machine_kexec_cleanup' |
| loongarch64-linux-ld: kernel/kexec_core.o: in function `.L287': |
| >> kexec_core.c:(.text+0x1c5c): undefined reference to `machine_crash_shutdown' |
| >> loongarch64-linux-ld: kexec_core.c:(.text+0x1c64): undefined reference to `machine_kexec' |
| loongarch64-linux-ld: kernel/kexec_core.o: in function `.L2^B5': |
| >> kexec_core.c:(.text+0x2090): undefined reference to `machine_shutdown' |
| loongarch64-linux-ld: kexec_core.c:(.text+0x20a0): undefined reference to `machine_kexec' |
| --------------------------------------------------------------- |
| |
| Here, changing the dependency of machine_kexec.o relocate_kernel.o to |
| CONFIG_KEXEC_CORE can fix above building error. |
| |
| Link: https://lkml.kernel.org/r/ZWhLFDC6vHsxNCpY@MiWiFi-R3L-srv |
| Closes: https://lore.kernel.org/oe-kbuild-all/202311300946.kHE9Iu71-lkp@intel.com/ |
| Signed-off-by: Baoquan He <bhe@redhat.com> |
| Reported-by: kernel test robot <lkp@intel.com> |
| Cc: Eric DeVolder <eric_devolder@yahoo.com> |
| Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
| --- |
| |
| arch/loongarch/kernel/Makefile | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/arch/loongarch/kernel/Makefile~loongarch-change-dependency-of-object-files |
| +++ a/arch/loongarch/kernel/Makefile |
| @@ -57,7 +57,7 @@ obj-$(CONFIG_MAGIC_SYSRQ) += sysrq.o |
| |
| obj-$(CONFIG_RELOCATABLE) += relocate.o |
| |
| -obj-$(CONFIG_KEXEC) += machine_kexec.o relocate_kernel.o |
| +obj-$(CONFIG_KEXEC_CORE) += machine_kexec.o relocate_kernel.o |
| obj-$(CONFIG_CRASH_DUMP) += crash_dump.o |
| |
| obj-$(CONFIG_UNWINDER_GUESS) += unwind_guess.o |
| _ |