On 08/22/24 at 08:41pm, Dave Vasilevsky wrote: > On 2024-08-22 20:04, Baoquan He wrote: > > If so, below patch possiblly can fix it. Can you help check if it's OK? > > That removes the possibility of enabling CRASH_DUMP on PPC_BOOK3S_32, even when booting via other mechanisms. Maybe it would be best to just make it not-default? Please take a look at this patch: > This is a good mimic of ARCH_DEFAULT_KEXEC_IMAGE_VERIFY_SIG and the correspondent KEXEC_IMAGE_VERIFY_SIG. It looks good to me, as long as no one complain we introduce too many knobs. Can you post this formally so that people can review it? > > From d6e5fe3a45f46f1aa01914648c443291d956de9e Mon Sep 17 00:00:00 2001 > From: Dave Vasilevsky <dave@xxxxxxxxxxxxx> > Date: Thu, 22 Aug 2024 20:13:46 -0400 > Subject: [PATCH] powerpc: Default to CRASH_DUMP=n when Open Firmware boot is > likely > MIME-Version: 1.0 > Content-Type: text/plain; charset=UTF-8 > Content-Transfer-Encoding: 8bit > > Open Firmware is unable to boot a kernel where PHYSICAL_START is > non-zero, which occurs when CRASH_DUMP is on. > > On PPC_BOOK3S_32, the most common way of booting is Open Firmware, so > most users probably don't want CRASH_DUMP. Users booting via some > other mechanism can turn it on explicitly. > > Signed-off-by: Dave Vasilevsky <dave@xxxxxxxxxxxxx> > Reported-by: Reimar Döffinger <Reimar.Doeffinger@xxxxxx> > Fixes: 75bc255a7444 > --- > arch/arm/Kconfig | 3 +++ > arch/arm64/Kconfig | 3 +++ > arch/loongarch/Kconfig | 3 +++ > arch/mips/Kconfig | 3 +++ > arch/powerpc/Kconfig | 4 ++++ > arch/riscv/Kconfig | 3 +++ > arch/s390/Kconfig | 3 +++ > arch/sh/Kconfig | 3 +++ > arch/x86/Kconfig | 3 +++ > kernel/Kconfig.kexec | 2 +- > 10 files changed, 29 insertions(+), 1 deletion(-) > > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig > index 54b2bb817a7f..200995052690 100644 > --- a/arch/arm/Kconfig > +++ b/arch/arm/Kconfig > @@ -1597,6 +1597,9 @@ config ATAGS_PROC > config ARCH_SUPPORTS_CRASH_DUMP > def_bool y > > +config ARCH_DEFAULT_CRASH_DUMP > + def_bool y > + > config AUTO_ZRELADDR > bool "Auto calculation of the decompressed kernel image address" if !ARCH_MULTIPLATFORM > default !(ARCH_FOOTBRIDGE || ARCH_RPC || ARCH_SA1100) > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig > index a2f8ff354ca6..43e08cc8204f 100644 > --- a/arch/arm64/Kconfig > +++ b/arch/arm64/Kconfig > @@ -1558,6 +1558,9 @@ config ARCH_DEFAULT_KEXEC_IMAGE_VERIFY_SIG > config ARCH_SUPPORTS_CRASH_DUMP > def_bool y > > +config ARCH_DEFAULT_CRASH_DUMP > + def_bool y > + > config ARCH_HAS_GENERIC_CRASHKERNEL_RESERVATION > def_bool CRASH_RESERVE > > diff --git a/arch/loongarch/Kconfig b/arch/loongarch/Kconfig > index 70f169210b52..ce232ddcd27d 100644 > --- a/arch/loongarch/Kconfig > +++ b/arch/loongarch/Kconfig > @@ -599,6 +599,9 @@ config ARCH_SUPPORTS_KEXEC > config ARCH_SUPPORTS_CRASH_DUMP > def_bool y > > +config ARCH_DEFAULT_CRASH_DUMP > + def_bool y > + > config ARCH_SELECTS_CRASH_DUMP > def_bool y > depends on CRASH_DUMP > diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig > index 60077e576935..b547f4304d0c 100644 > --- a/arch/mips/Kconfig > +++ b/arch/mips/Kconfig > @@ -2881,6 +2881,9 @@ config ARCH_SUPPORTS_KEXEC > config ARCH_SUPPORTS_CRASH_DUMP > def_bool y > > +config ARCH_DEFAULT_CRASH_DUMP > + def_bool y > + > config PHYSICAL_START > hex "Physical address where the kernel is loaded" > default "0xffffffff84000000" > diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig > index d7b09b064a8a..0f3c1f958eac 100644 > --- a/arch/powerpc/Kconfig > +++ b/arch/powerpc/Kconfig > @@ -682,6 +682,10 @@ config RELOCATABLE_TEST > config ARCH_SUPPORTS_CRASH_DUMP > def_bool PPC64 || PPC_BOOK3S_32 || PPC_85xx || (44x && !SMP) > > +config ARCH_DEFAULT_CRASH_DUMP > + bool > + default y if !PPC_BOOK3S_32 > + > config ARCH_SELECTS_CRASH_DUMP > def_bool y > depends on CRASH_DUMP > diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig > index 0f3cd7c3a436..eb247b5ee569 100644 > --- a/arch/riscv/Kconfig > +++ b/arch/riscv/Kconfig > @@ -880,6 +880,9 @@ config ARCH_SUPPORTS_KEXEC_PURGATORY > config ARCH_SUPPORTS_CRASH_DUMP > def_bool y > > +config ARCH_DEFAULT_CRASH_DUMP > + def_bool y > + > config ARCH_HAS_GENERIC_CRASHKERNEL_RESERVATION > def_bool CRASH_RESERVE > > diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig > index a822f952f64a..05a1fb408471 100644 > --- a/arch/s390/Kconfig > +++ b/arch/s390/Kconfig > @@ -275,6 +275,9 @@ config ARCH_SUPPORTS_CRASH_DUMP > This option also enables s390 zfcpdump. > See also <file:Documentation/arch/s390/zfcpdump.rst> > > +config ARCH_DEFAULT_CRASH_DUMP > + def_bool y > + > menu "Processor type and features" > > config HAVE_MARCH_Z10_FEATURES > diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig > index 1aa3c4a0c5b2..3a6338962636 100644 > --- a/arch/sh/Kconfig > +++ b/arch/sh/Kconfig > @@ -549,6 +549,9 @@ config ARCH_SUPPORTS_KEXEC > config ARCH_SUPPORTS_CRASH_DUMP > def_bool BROKEN_ON_SMP > > +config ARCH_DEFAULT_CRASH_DUMP > + def_bool y > + > config ARCH_SUPPORTS_KEXEC_JUMP > def_bool y > > diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig > index 007bab9f2a0e..aa4666bb9e9c 100644 > --- a/arch/x86/Kconfig > +++ b/arch/x86/Kconfig > @@ -2087,6 +2087,9 @@ config ARCH_SUPPORTS_KEXEC_JUMP > config ARCH_SUPPORTS_CRASH_DUMP > def_bool X86_64 || (X86_32 && HIGHMEM) > > +config ARCH_DEFAULT_CRASH_DUMP > + def_bool y > + > config ARCH_SUPPORTS_CRASH_HOTPLUG > def_bool y > > diff --git a/kernel/Kconfig.kexec b/kernel/Kconfig.kexec > index 6c34e63c88ff..4d111f871951 100644 > --- a/kernel/Kconfig.kexec > +++ b/kernel/Kconfig.kexec > @@ -97,7 +97,7 @@ config KEXEC_JUMP > > config CRASH_DUMP > bool "kernel crash dumps" > - default y > + default ARCH_DEFAULT_CRASH_DUMP > depends on ARCH_SUPPORTS_CRASH_DUMP > depends on KEXEC_CORE > select VMCORE_INFO > -- > 2.34.1 > _______________________________________________ kexec mailing list kexec@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/kexec