aboutsummaryrefslogtreecommitdiffstats
path: root/lib/crypto/Makefile
diff options
context:
space:
mode:
authorEric Biggers <ebiggers@kernel.org>2025-07-12 16:23:04 -0700
committerEric Biggers <ebiggers@kernel.org>2025-07-14 11:28:35 -0700
commitf3d6cb3dc0394b866bc0d1e15157ce45844cf3d3 (patch)
tree49d272f7f91c2cb5dfe9339107b8b487aa47f664 /lib/crypto/Makefile
parentlib/crypto: sparc/sha1: Migrate optimized code into library (diff)
downloadlinux-f3d6cb3dc0394b866bc0d1e15157ce45844cf3d3.tar.gz
linux-f3d6cb3dc0394b866bc0d1e15157ce45844cf3d3.zip
lib/crypto: x86/sha1: Migrate optimized code into library
Instead of exposing the x86-optimized SHA-1 code via x86-specific crypto_shash algorithms, instead just implement the sha1_blocks() library function. This is much simpler, it makes the SHA-1 library functions be x86-optimized, and it fixes the longstanding issue where the x86-optimized SHA-1 code was disabled by default. SHA-1 still remains available through crypto_shash, but individual architectures no longer need to handle it. To match sha1_blocks(), change the type of the nblocks parameter of the assembly functions from int to size_t. The assembly functions actually already treated it as size_t. Reviewed-by: Ard Biesheuvel <ardb@kernel.org> Link: https://lore.kernel.org/r/20250712232329.818226-14-ebiggers@kernel.org Signed-off-by: Eric Biggers <ebiggers@kernel.org>
Diffstat (limited to 'lib/crypto/Makefile')
-rw-r--r--lib/crypto/Makefile3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/crypto/Makefile b/lib/crypto/Makefile
index 7897da2de623..b09fdb7f4b4c 100644
--- a/lib/crypto/Makefile
+++ b/lib/crypto/Makefile
@@ -82,6 +82,9 @@ libsha1-y += powerpc/sha1-powerpc-asm.o
libsha1-$(CONFIG_SPE) += powerpc/sha1-spe-asm.o
endif
libsha1-$(CONFIG_SPARC) += sparc/sha1_asm.o
+libsha1-$(CONFIG_X86) += x86/sha1-ssse3-and-avx.o \
+ x86/sha1-avx2-asm.o \
+ x86/sha1-ni-asm.o
endif # CONFIG_CRYPTO_LIB_SHA1_ARCH
################################################################################