From: Eric DeVolder <eric.devolder@oracle•com>
To: linux@armlinux•org.uk, catalin.marinas@arm•com, will@kernel•org,
chenhuacai@kernel•org, geert@linux-m68k•org,
tsbogend@alpha•franken.de, James.Bottomley@HansenPartnership•com,
deller@gmx•de, ysato@users•sourceforge.jp, dalias@libc•org,
glaubitz@physik•fu-berlin.de, tglx@linutronix•de,
mingo@redhat•com, bp@alien8•de, dave.hansen@linux•intel.com,
x86@kernel•org, linux-kernel@vger•kernel.org,
linux-arm-kernel@lists•infradead.org, linux-ia64@vger•kernel.org,
loongarch@lists•linux.dev, linux-m68k@lists•linux-m68k.org,
linux-mips@vger•kernel.org, linux-parisc@vger•kernel.org,
linuxppc-dev@lists•ozlabs.org, linux-riscv@lists•infradead.org,
linux-s390@vger•kernel.org, linux-sh@vger•kernel.org
Cc: peterz@infradead•org, linus.walleij@linaro•org,
thunder.leizhen@huawei•com, hpa@zytor•com, kernel@xen0n•name,
eric.devolder@oracle•com, ardb@kernel•org, tsi@tuyoix•net,
agordeev@linux•ibm.com, paulmck@kernel•org, bhe@redhat•com,
masahiroy@kernel•org, konrad.wilk@oracle•com,
sebastian.reichel@collabora•com, samitolvanen@google•com,
ojeda@kernel•org, juerg.haefliger@canonical•com,
borntraeger@linux•ibm.com, frederic@kernel•org, arnd@arndb•de,
mhiramat@kernel•org, aou@eecs•berkeley.edu,
keescook@chromium•org, gor@linux•ibm.com,
anshuman.khandual@arm•com, hca@linux•ibm.com, xin3.li@intel•com,
npiggin@gmail•com, rmk+kernel@armlinux•org.uk,
paul.walmsley@sifive•com, boris.ostrovsky@oracle•com,
ziy@nvidia•com, hbathini@linux•ibm.com,
gregkh@linuxfoundation•org, kirill.shutemov@linux•intel.com,
ndesaulniers@google•com, sourabhjain@linux•ibm.com,
palmer@dabbelt•com, svens@linux•ibm.com, tj@kernel•org,
akpm@linux-foundation•org, rppt@kernel•org
Subject: [PATCH v4 12/13] s390/kexec: refactor for kernel/Kconfig.kexec
Date: Wed, 5 Jul 2023 10:20:03 -0400 [thread overview]
Message-ID: <20230705142004.3605799-13-eric.devolder@oracle.com> (raw)
In-Reply-To: <20230705142004.3605799-1-eric.devolder@oracle.com>
The kexec and crash kernel options are provided in the common
kernel/Kconfig.kexec. Utilize the common options and provide
the ARCH_SUPPORTS_ and ARCH_SELECTS_ entries to recreate the
equivalent set of KEXEC and CRASH options.
NOTE: The original Kconfig has a KEXEC_SIG which depends on
MODULE_SIG_FORMAT. However, attempts to keep the MODULE_SIG_FORMAT
dependency (using the strategy outlined in this series, and other
techniques) results in 'error: recursive dependency detected'
on CRYPTO.
Per Alexander Gordeev <agordeev@linux•ibm.com>: "the MODULE_SIG_FORMAT
dependency was introduced with [git commit below] and in fact was not
necessary, since s390 did/does not use mod_check_sig() anyway.
commit c8424e776b09 ("MODSIGN: Export module signature definitions")
MODULE_SIG_FORMAT is needed to select SYSTEM_DATA_VERIFICATION. But
SYSTEM_DATA_VERIFICATION is also selected by FS_VERITY*, so dropping
MODULE_SIG_FORMAT does not hurt."
Therefore, the solution is to drop the MODULE_SIG_FORMAT dependency
from KEXEC_SIG. Still results in equivalent .config files for s390.
Signed-off-by: Eric DeVolder <eric.devolder@oracle•com>
Acked-by: Alexander Gordeev <agordeev@linux•ibm.com>
---
arch/s390/Kconfig | 65 ++++++++++++++---------------------------------
1 file changed, 19 insertions(+), 46 deletions(-)
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
index 5b39918b7042..5d4fbbfdd1cd 100644
--- a/arch/s390/Kconfig
+++ b/arch/s390/Kconfig
@@ -244,6 +244,25 @@ config PGTABLE_LEVELS
source "kernel/livepatch/Kconfig"
+config ARCH_DEFAULT_KEXEC
+ def_bool y
+
+config ARCH_SUPPORTS_KEXEC
+ def_bool y
+
+config ARCH_SUPPORTS_KEXEC_FILE
+ def_bool CRYPTO && CRYPTO_SHA256 && CRYPTO_SHA256_S390
+
+config ARCH_HAS_KEXEC_PURGATORY
+ def_bool KEXEC_FILE
+
+config ARCH_SUPPORTS_CRASH_DUMP
+ def_bool y
+ help
+ Refer to <file:Documentation/s390/zfcpdump.rst> for more details on this.
+ This option also enables s390 zfcpdump.
+ See also <file:Documentation/s390/zfcpdump.rst>
+
menu "Processor type and features"
config HAVE_MARCH_Z10_FEATURES
@@ -482,36 +501,6 @@ config SCHED_TOPOLOGY
source "kernel/Kconfig.hz"
-config KEXEC
- def_bool y
- select KEXEC_CORE
-
-config KEXEC_FILE
- bool "kexec file based system call"
- select KEXEC_CORE
- depends on CRYPTO
- depends on CRYPTO_SHA256
- depends on CRYPTO_SHA256_S390
- help
- Enable the kexec file based system call. In contrast to the normal
- kexec system call this system call takes file descriptors for the
- kernel and initramfs as arguments.
-
-config ARCH_HAS_KEXEC_PURGATORY
- def_bool y
- depends on KEXEC_FILE
-
-config KEXEC_SIG
- bool "Verify kernel signature during kexec_file_load() syscall"
- depends on KEXEC_FILE && MODULE_SIG_FORMAT
- help
- This option makes kernel signature verification mandatory for
- the kexec_file_load() syscall.
-
- In addition to that option, you need to enable signature
- verification for the corresponding kernel image type being
- loaded in order for this to work.
-
config KERNEL_NOBP
def_bool n
prompt "Enable modified branch prediction for the kernel by default"
@@ -733,22 +722,6 @@ config VFIO_AP
endmenu
-menu "Dump support"
-
-config CRASH_DUMP
- bool "kernel crash dumps"
- select KEXEC
- help
- Generate crash dump after being started by kexec.
- Crash dump kernels are loaded in the main kernel with kexec-tools
- into a specially reserved region and then later executed after
- a crash by kdump/kexec.
- Refer to <file:Documentation/s390/zfcpdump.rst> for more details on this.
- This option also enables s390 zfcpdump.
- See also <file:Documentation/s390/zfcpdump.rst>
-
-endmenu
-
config CCW
def_bool y
--
2.31.1
next prev parent reply other threads:[~2023-07-05 22:15 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-07-05 14:19 [PATCH v4 00/13] refactor Kconfig to consolidate KEXEC and CRASH options Eric DeVolder
2023-07-05 14:19 ` [PATCH v4 01/13] kexec: consolidate kexec and crash options into kernel/Kconfig.kexec Eric DeVolder
2023-07-06 12:18 ` Arnd Bergmann
2023-07-06 12:23 ` Eric DeVolder
2023-07-05 14:19 ` [PATCH v4 02/13] x86/kexec: refactor for kernel/Kconfig.kexec Eric DeVolder
2023-07-05 14:19 ` [PATCH v4 03/13] arm/kexec: " Eric DeVolder
2023-07-05 15:05 ` Arnd Bergmann
2023-07-05 15:22 ` Eric DeVolder
2023-07-05 15:53 ` Arnd Bergmann
2023-07-05 14:19 ` [PATCH v4 04/13] ia64/kexec: " Eric DeVolder
2023-07-05 14:19 ` [PATCH v4 05/13] arm64/kexec: " Eric DeVolder
2023-07-05 14:19 ` [PATCH v4 06/13] loongarch/kexec: " Eric DeVolder
2023-07-05 14:19 ` [PATCH v4 07/13] m68k/kexec: " Eric DeVolder
2023-07-05 14:19 ` [PATCH v4 08/13] mips/kexec: " Eric DeVolder
2023-07-05 14:20 ` [PATCH v4 09/13] parisc/kexec: " Eric DeVolder
2023-07-05 14:20 ` [PATCH v4 10/13] powerpc/kexec: " Eric DeVolder
2023-07-05 14:20 ` [PATCH v4 11/13] riscv/kexec: " Eric DeVolder
2023-07-05 14:20 ` Eric DeVolder [this message]
2023-07-05 15:49 ` [PATCH v4 12/13] s390/kexec: " Nathan Chancellor
2023-07-05 16:23 ` Eric DeVolder
2023-07-05 19:44 ` Eric DeVolder
2023-07-06 15:58 ` Alexander Gordeev
2023-07-06 16:07 ` Eric DeVolder
2023-07-05 14:20 ` [PATCH v4 13/13] sh/kexec: " Eric DeVolder
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230705142004.3605799-13-eric.devolder@oracle.com \
--to=eric.devolder@oracle$(echo .)com \
--cc=James.Bottomley@HansenPartnership$(echo .)com \
--cc=agordeev@linux$(echo .)ibm.com \
--cc=akpm@linux-foundation$(echo .)org \
--cc=anshuman.khandual@arm$(echo .)com \
--cc=aou@eecs$(echo .)berkeley.edu \
--cc=ardb@kernel$(echo .)org \
--cc=arnd@arndb$(echo .)de \
--cc=bhe@redhat$(echo .)com \
--cc=boris.ostrovsky@oracle$(echo .)com \
--cc=borntraeger@linux$(echo .)ibm.com \
--cc=bp@alien8$(echo .)de \
--cc=catalin.marinas@arm$(echo .)com \
--cc=chenhuacai@kernel$(echo .)org \
--cc=dalias@libc$(echo .)org \
--cc=dave.hansen@linux$(echo .)intel.com \
--cc=deller@gmx$(echo .)de \
--cc=frederic@kernel$(echo .)org \
--cc=geert@linux-m68k$(echo .)org \
--cc=glaubitz@physik$(echo .)fu-berlin.de \
--cc=gor@linux$(echo .)ibm.com \
--cc=gregkh@linuxfoundation$(echo .)org \
--cc=hbathini@linux$(echo .)ibm.com \
--cc=hca@linux$(echo .)ibm.com \
--cc=hpa@zytor$(echo .)com \
--cc=juerg.haefliger@canonical$(echo .)com \
--cc=keescook@chromium$(echo .)org \
--cc=kernel@xen0n$(echo .)name \
--cc=kirill.shutemov@linux$(echo .)intel.com \
--cc=konrad.wilk@oracle$(echo .)com \
--cc=linus.walleij@linaro$(echo .)org \
--cc=linux-arm-kernel@lists$(echo .)infradead.org \
--cc=linux-ia64@vger$(echo .)kernel.org \
--cc=linux-kernel@vger$(echo .)kernel.org \
--cc=linux-m68k@lists$(echo .)linux-m68k.org \
--cc=linux-mips@vger$(echo .)kernel.org \
--cc=linux-parisc@vger$(echo .)kernel.org \
--cc=linux-riscv@lists$(echo .)infradead.org \
--cc=linux-s390@vger$(echo .)kernel.org \
--cc=linux-sh@vger$(echo .)kernel.org \
--cc=linux@armlinux$(echo .)org.uk \
--cc=linuxppc-dev@lists$(echo .)ozlabs.org \
--cc=loongarch@lists$(echo .)linux.dev \
--cc=masahiroy@kernel$(echo .)org \
--cc=mhiramat@kernel$(echo .)org \
--cc=mingo@redhat$(echo .)com \
--cc=ndesaulniers@google$(echo .)com \
--cc=npiggin@gmail$(echo .)com \
--cc=ojeda@kernel$(echo .)org \
--cc=palmer@dabbelt$(echo .)com \
--cc=paul.walmsley@sifive$(echo .)com \
--cc=paulmck@kernel$(echo .)org \
--cc=peterz@infradead$(echo .)org \
--cc=rmk+kernel@armlinux$(echo .)org.uk \
--cc=rppt@kernel$(echo .)org \
--cc=samitolvanen@google$(echo .)com \
--cc=sebastian.reichel@collabora$(echo .)com \
--cc=sourabhjain@linux$(echo .)ibm.com \
--cc=svens@linux$(echo .)ibm.com \
--cc=tglx@linutronix$(echo .)de \
--cc=thunder.leizhen@huawei$(echo .)com \
--cc=tj@kernel$(echo .)org \
--cc=tsbogend@alpha$(echo .)franken.de \
--cc=tsi@tuyoix$(echo .)net \
--cc=will@kernel$(echo .)org \
--cc=x86@kernel$(echo .)org \
--cc=xin3.li@intel$(echo .)com \
--cc=ysato@users$(echo .)sourceforge.jp \
--cc=ziy@nvidia$(echo .)com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox