summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Egorenkov <egorenar@linux.ibm.com>2026-02-16 07:29:16 +0100
committerHeiko Carstens <hca@linux.ibm.com>2026-02-17 15:49:03 +0100
commitdd3411959b57df6e05a3ccbac67b0a836871c0c4 (patch)
tree326ca662529bcf9219623f9e1e2ed2bb35606bd4
parentff661eeee26038f15ed9dd33c91809632e11d9eb (diff)
s390/kexec: Make KEXEC_SIG available when CONFIG_MODULES=n
The commit c8424e776b09 ("MODSIGN: Export module signature definitions") replaced the dependency of KEXEC_SIG on SYSTEM_DATA_VERIFICATION with the dependency on MODULE_SIG_FORMAT. This change disables KEXEC_SIG in s390 kernels built with MODULES=n if nothing else selects MODULE_SIG_FORMAT. Furthermore, the signature verification in s390 kexec does not require MODULE_SIG_FORMAT because it requires only the struct module_signature and, therefore, does not depend on code in kernel/module_signature.c. But making ARCH_SUPPORTS_KEXEC_SIG depend on SYSTEM_DATA_VERIFICATION is also incorrect because it makes KEXEC_SIG available on s390 only if some other arbitrary option (for instance a file system or device driver) selects it directly or indirectly. To properly make KEXEC_SIG available for s390 kernels built with MODULES=y as well as MODULES=n _and_ also not depend on arbitrary options selecting SYSTEM_DATA_VERIFICATION, set ARCH_SUPPORTS_KEXEC_SIG=y for s390 and select SYSTEM_DATA_VERIFICATION when KEXEC_SIG=y. Fixes: c8424e776b09 ("MODSIGN: Export module signature definitions") Suggested-by: Heiko Carstens <hca@linux.ibm.com> Signed-off-by: Alexander Egorenkov <egorenar@linux.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
-rw-r--r--arch/s390/Kconfig3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
index cda697a03abf..dae9710648bf 100644
--- a/arch/s390/Kconfig
+++ b/arch/s390/Kconfig
@@ -282,6 +282,7 @@ config S390
select SPARSE_IRQ
select SWIOTLB
select SYSCTL_EXCEPTION_TRACE
+ select SYSTEM_DATA_VERIFICATION if KEXEC_SIG
select THREAD_INFO_IN_TASK
select TRACE_IRQFLAGS_SUPPORT
select TTY
@@ -316,7 +317,7 @@ config ARCH_SUPPORTS_KEXEC_FILE
def_bool y
config ARCH_SUPPORTS_KEXEC_SIG
- def_bool MODULE_SIG_FORMAT
+ def_bool y
config ARCH_SUPPORTS_KEXEC_PURGATORY
def_bool y