Subject: [PATCH 0/5] kexec: fix the incorrect ifdeffery and dependency of CONFIG_KEXEC

From: Baoquan He <[email-masked]>
Date: Fri, 8 Dec 2023 15:30:31 +0800

The select of KEXEC for CRASH_DUMP in kernel/Kconfig.kexec will be
dropped, then compiling errors will be triggered if below config
items are set:

===
CONFIG_CRASH_CORE=y
CONFIG_KEXEC_CORE=y
CONFIG_CRASH_DUMP=y
===

E.g on mips, below link error are seen:
--------------------------------------------------------------------
mipsel-linux-ld: kernel/kexec_core.o: in function `kimage_free':
kernel/kexec_core.c:(.text+0x2200): undefined reference to `machine_kexec_cleanup'
mipsel-linux-ld: kernel/kexec_core.o: in function `__crash_kexec':
kernel/kexec_core.c:(.text+0x2480): undefined reference to `machine_crash_shutdown'
mipsel-linux-ld: kernel/kexec_core.c:(.text+0x2488): undefined reference to `machine_kexec'
mipsel-linux-ld: kernel/kexec_core.o: in function `kernel_kexec':
kernel/kexec_core.c:(.text+0x29b8): undefined reference to `machine_shutdown'
mipsel-linux-ld: kernel/kexec_core.c:(.text+0x29c0): undefined reference to `machine_kexec'
--------------------------------------------------------------------

Here, change the incorrect dependency of building kexec_core related object
files, and the ifdeffery on architectures from CONFIG_KEXEC to
CONFIG_KEXEC_CORE.

Testing:
========
Passed on mips and loognarch with the LKP reproducer.

Baoquan He (5):
  loongarch, kexec: change dependency of object files
  m68k, kexec: fix the incorrect ifdeffery and build dependency of
    CONFIG_KEXEC
  mips, kexec: fix the incorrect ifdeffery and dependency of
    CONFIG_KEXEC
  sh, kexec: fix the incorrect ifdeffery and dependency of CONFIG_KEXEC
  x86, kexec: fix the wrong ifdeffery CONFIG_KEXEC

 arch/loongarch/kernel/Makefile  |  2 +-
 arch/m68k/include/asm/kexec.h   |  4 ++--
 arch/m68k/kernel/Makefile       |  2 +-
 arch/mips/cavium-octeon/smp.c   |  4 ++--
 arch/mips/include/asm/kexec.h   |  2 +-
 arch/mips/include/asm/smp-ops.h |  2 +-
 arch/mips/include/asm/smp.h     |  2 +-
 arch/mips/kernel/Makefile       |  2 +-
 arch/mips/kernel/smp-bmips.c    |  4 ++--
 arch/mips/kernel/smp-cps.c      | 10 +++++-----
 arch/mips/loongson64/reset.c    |  4 ++--
 arch/mips/loongson64/smp.c      |  2 +-
 arch/sh/include/asm/kexec.h     |  4 ++--
 arch/sh/kernel/Makefile         |  2 +-
 arch/sh/kernel/reboot.c         |  4 ++--
 arch/sh/kernel/setup.c          |  2 +-
 arch/x86/boot/compressed/acpi.c |  2 +-
 17 files changed, 27 insertions(+), 27 deletions(-)

-- 
2.41.0