• Ignat Korchagin's avatar
    kexec: drop dependency on ARCH_SUPPORTS_KEXEC from CRASH_DUMP · c41bd251
    Ignat Korchagin authored
    In commit f8ff23429c62 ("kernel/Kconfig.kexec: drop select of KEXEC for
    CRASH_DUMP") we tried to fix a config regression, where CONFIG_CRASH_DUMP
    required CONFIG_KEXEC.
    
    However, it was not enough at least for arm64 platforms.  While further
    testing the patch with our arm64 config I noticed that CONFIG_CRASH_DUMP
    is unavailable in menuconfig.  This is because CONFIG_CRASH_DUMP still
    depends on the new CONFIG_ARCH_SUPPORTS_KEXEC introduced in commit
    91506f7e ("arm64/kexec: refactor for kernel/Kconfig.kexec") and on
    arm64 CONFIG_ARCH_SUPPORTS_KEXEC requires CONFIG_PM_SLEEP_SMP=y, which in
    turn requires either CONFIG_SUSPEND=y or CONFIG_HIBERNATION=y neither of
    which are set in our config.
    
    Given that we already established that CONFIG_KEXEC (which is a switch for
    kexec system call itself) is not required for CONFIG_CRASH_DUMP drop
    CONFIG_ARCH_SUPPORTS_KEXEC dependency as well.  The arm64 kernel builds
    just fine with CONFIG_CRASH_DUMP=y and with both CONFIG_KEXEC=n and
    CONFIG_KEXEC_FILE=n after f8ff23429c62 ("kernel/Kconfig.kexec: drop select
    of KEXEC for CRASH_DUMP") and this patch are applied given that the
    necessary shared bits are included via CONFIG_KEXEC_CORE dependency.
    
    [bhe@redhat.com: don't export some symbols when CONFIG_MMU=n]
      Link: https://lkml.kernel.org/r/ZW03ODUKGGhP1ZGU@MiWiFi-R3L-srv
    [bhe@redhat.com: riscv, kexec: fix dependency of two items]
      Link: https://lkml.kernel.org/r/ZW04G/SKnhbE5mnX@MiWiFi-R3L-srv
    Link: https://lkml.kernel.org/r/20231129220409.55006-1-ignat@cloudflare.com
    Fixes: 91506f7e ("arm64/kexec: refactor for kernel/Kconfig.kexec")
    Signed-off-by: default avatarIgnat Korchagin <ignat@cloudflare.com>
    Signed-off-by: default avatarBaoquan He <bhe@redhat.com>
    Acked-by: default avatarBaoquan He <bhe@redhat.com>
    Cc: Alexander Gordeev <agordeev@linux.ibm.com>
    Cc: <stable@vger.kernel.org> # 6.6+: f8ff234: kernel/Kconfig.kexec: drop select of KEXEC for CRASH_DUMP
    Cc: <stable@vger.kernel.org> # 6.6+
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    c41bd251
crash_core.c 926 Bytes