| From: Arnd Bergmann <arnd@arndb.de> |
| Subject: kexec: select CRYPTO from KEXEC_FILE instead of depending on it |
| Date: Mon, 23 Oct 2023 13:01:55 +0200 |
| |
| All other users of crypto code use 'select' instead of 'depends on', so do |
| the same thing with KEXEC_FILE for consistency. |
| |
| In practice this makes very little difference as kernels with kexec |
| support are very likely to also include some other feature that already |
| selects both crypto and crypto_sha256, but being consistent here helps for |
| usability as well as to avoid potential circular dependencies. |
| |
| This reverts the dependency back to what it was originally before commit |
| 74ca317c26a3f ("kexec: create a new config option CONFIG_KEXEC_FILE for |
| new syscall"), which changed changed it with the comment "This should be |
| safer as "select" is not recursive", but that appears to have been done in |
| error, as "select" is indeed recursive, and there are no other |
| dependencies that prevent CRYPTO_SHA256 from being selected here. |
| |
| Link: https://lkml.kernel.org/r/20231023110308.1202042-2-arnd@kernel.org |
| Fixes: 74ca317c26a3f ("kexec: create a new config option CONFIG_KEXEC_FILE for new syscall") |
| Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
| Reviewed-by: Eric DeVolder <eric_devolder@yahoo.com> |
| Tested-by: Eric DeVolder <eric_devolder@yahoo.com> |
| Acked-by: Baoquan He <bhe@redhat.com> |
| Cc: Herbert Xu <herbert@gondor.apana.org.au> |
| Cc: "David S. Miller" <davem@davemloft.net> |
| Cc: Albert Ou <aou@eecs.berkeley.edu> |
| Cc: Alexander Gordeev <agordeev@linux.ibm.com> |
| Cc: Ard Biesheuvel <ardb@kernel.org> |
| Cc: Borislav Petkov <bp@alien8.de> |
| Cc: Christian Borntraeger <borntraeger@linux.ibm.com> |
| Cc: Christophe Leroy <christophe.leroy@csgroup.eu> |
| Cc: Conor Dooley <conor@kernel.org> |
| Cc: Dave Hansen <dave.hansen@linux.intel.com> |
| Cc: Heiko Carstens <hca@linux.ibm.com> |
| Cc: "H. Peter Anvin" <hpa@zytor.com> |
| Cc: Ingo Molnar <mingo@redhat.com> |
| Cc: Nicholas Piggin <npiggin@gmail.com> |
| Cc: Palmer Dabbelt <palmer@dabbelt.com> |
| Cc: Paul Walmsley <paul.walmsley@sifive.com> |
| Cc: Peter Zijlstra <peterz@infradead.org> |
| Cc: Sven Schnelle <svens@linux.ibm.com> |
| Cc: Thomas Gleixner <tglx@linutronix.de> |
| Cc: Vasily Gorbik <gor@linux.ibm.com> |
| Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
| --- |
| |
| kernel/Kconfig.kexec | 3 ++- |
| 1 file changed, 2 insertions(+), 1 deletion(-) |
| |
| --- a/kernel/Kconfig.kexec~kexec-select-crypto-from-kexec_file-instead-of-depending-on-it |
| +++ a/kernel/Kconfig.kexec |
| @@ -36,7 +36,8 @@ config KEXEC |
| config KEXEC_FILE |
| bool "Enable kexec file based system call" |
| depends on ARCH_SUPPORTS_KEXEC_FILE |
| - depends on CRYPTO_SHA256=y || !ARCH_SUPPORTS_KEXEC_PURGATORY |
| + select CRYPTO |
| + select CRYPTO_SHA256 |
| select KEXEC_CORE |
| help |
| This is new version of kexec system call. This system call is |
| _ |