Revert "lib: introduce HASH_CALCULATE option"
authorAlexandru Gagniuc <mr.nuke.me@gmail.com>
Mon, 24 May 2021 19:28:56 +0000 (14:28 -0500)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Fri, 28 May 2021 14:17:01 +0000 (16:17 +0200)
When we think of Kconfig, we usually think of features that we like
to enable or not. Ideally, we wouldn't use Kconfig to fix a build
issue, although sometimes it might make sense. With Kconfig it's hard
to guarantee that the fix is universal. We can only say that it works
for the set of tested configurations. In the majority of cases, it's
preferable to let the linker figure things out for us.

The reverted commit attempted to fix a build issue by adding an
invisible Kconfig option. This is wrong in several ways:

It invents a new Kconfig variable when CONFIG_HASH already
exists for the same purpose.
Second, hash-checksum.c makes use of the hash_progressive_lookup_algo()
symbol, which is only provided with CONFIG_HASH, but this dependency
was not expressed in the reverted patch.

It feels like Kconfig is turning into a listing of all available
source files, and a buffet to 'select' which ones to compile. The
purpose of this revert is to enable the next change to make use of
CONFIG_HASH instead of adding to Kconfig.

This reverts commit 87316da05f2fd49d3709275e64ef0c5980366ade.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Acked-by: Masahisa Kojima <masahisa.kojima@linaro.org>
common/Kconfig.boot
lib/Kconfig
lib/Makefile
lib/efi_loader/Kconfig

index 3c6e77d..89a3161 100644 (file)
@@ -80,7 +80,6 @@ config FIT_SIGNATURE
        select RSA_VERIFY
        select IMAGE_SIGN_INFO
        select FIT_FULL_CHECK
-       select HASH_CALCULATE
        help
          This option enables signature verification of FIT uImages,
          using a hash signed and verified using RSA. If
index d675ab1..15019d2 100644 (file)
@@ -439,9 +439,6 @@ config CRC32C
 config XXHASH
        bool
 
-config HASH_CALCULATE
-       bool
-
 endmenu
 
 menu "Compression Support"
index 0835ea2..6825671 100644 (file)
@@ -61,7 +61,7 @@ endif
 obj-$(CONFIG_$(SPL_)ACPIGEN) += acpi/
 obj-$(CONFIG_$(SPL_)MD5) += md5.o
 obj-$(CONFIG_$(SPL_)RSA) += rsa/
-obj-$(CONFIG_HASH_CALCULATE) += hash-checksum.o
+obj-$(CONFIG_FIT_SIGNATURE) += hash-checksum.o
 obj-$(CONFIG_SHA1) += sha1.o
 obj-$(CONFIG_SHA256) += sha256.o
 obj-$(CONFIG_SHA512_ALGO) += sha512.o
index 98845b8..ecbc0c9 100644 (file)
@@ -174,7 +174,6 @@ config EFI_CAPSULE_AUTHENTICATE
        select PKCS7_MESSAGE_PARSER
        select PKCS7_VERIFY
        select IMAGE_SIGN_INFO
-       select HASH_CALCULATE
        select EFI_SIGNATURE_SUPPORT
        default n
        help
@@ -344,7 +343,6 @@ config EFI_SECURE_BOOT
        select X509_CERTIFICATE_PARSER
        select PKCS7_MESSAGE_PARSER
        select PKCS7_VERIFY
-       select HASH_CALCULATE
        select EFI_SIGNATURE_SUPPORT
        default n
        help