2021-04-05 22:16:13

by Julian Braha

[permalink] [raw]
Subject: [PATCH] crypto: fix CRYPTO_LIB_* dependencies on CRYPTO

Currently, when a config option selects a
CRYPTO_LIB_* option while CRYPTO is disabled,
Kbuild gives an unmet dependency. However,
these config options do not actually need to
depend on CRYPTO.

Signed-off-by: Julian Braha <[email protected]>
---
crypto/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/crypto/Kconfig b/crypto/Kconfig
index 5809cc198fa7..fb7eca5cb8c6 100644
--- a/crypto/Kconfig
+++ b/crypto/Kconfig
@@ -1870,9 +1870,9 @@ config CRYPTO_STATS
config CRYPTO_HASH_INFO
bool

-source "lib/crypto/Kconfig"
source "drivers/crypto/Kconfig"
source "crypto/asymmetric_keys/Kconfig"
source "certs/Kconfig"

endif # if CRYPTO
+source "lib/crypto/Kconfig"
--
2.27.0


2021-04-06 10:25:19

by Eric Biggers

[permalink] [raw]
Subject: Re: [PATCH] crypto: fix CRYPTO_LIB_* dependencies on CRYPTO

On Mon, Apr 05, 2021 at 11:04:38AM -0400, Julian Braha wrote:
> Currently, when a config option selects a
> CRYPTO_LIB_* option while CRYPTO is disabled,
> Kbuild gives an unmet dependency. However,
> these config options do not actually need to
> depend on CRYPTO.
>
> Signed-off-by: Julian Braha <[email protected]>
> ---
> crypto/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/crypto/Kconfig b/crypto/Kconfig
> index 5809cc198fa7..fb7eca5cb8c6 100644
> --- a/crypto/Kconfig
> +++ b/crypto/Kconfig
> @@ -1870,9 +1870,9 @@ config CRYPTO_STATS
> config CRYPTO_HASH_INFO
> bool
>
> -source "lib/crypto/Kconfig"
> source "drivers/crypto/Kconfig"
> source "crypto/asymmetric_keys/Kconfig"
> source "certs/Kconfig"
>
> endif # if CRYPTO
> +source "lib/crypto/Kconfig"
> --

Actually some of the files in lib/crypto/ do depend on CRYPTO. For example,
there are calls to crypto_xor_cpy() and crypto_memneq(), which call functions
defined in crypto/algapi.c and crypto/memneq.c. These helper functions would
need to be moved into lib/crypto/ for this to work.

- Eric