2
0
mirror of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-09-04 20:19:47 +08:00
linux/arch/x86/crypto
Eric Biggers 11d7956d52 crypto: x86/sha256 - implement library instead of shash
Instead of providing crypto_shash algorithms for the arch-optimized
SHA-256 code, instead implement the SHA-256 library.  This is much
simpler, it makes the SHA-256 library functions be arch-optimized, and
it fixes the longstanding issue where the arch-optimized SHA-256 was
disabled by default.  SHA-256 still remains available through
crypto_shash, but individual architectures no longer need to handle it.

To match sha256_blocks_arch(), 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.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2025-05-05 18:20:44 +08:00
..
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
aegis128-aesni-asm.S crypto: x86/aegis128 - remove unneeded RETs 2024-10-28 18:33:10 +08:00
aegis128-aesni-glue.c crypto: x86/aegis - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
aes-ctr-avx-x86_64.S crypto: x86/aes - drop the avx10_256 AES-XTS and AES-CTR code 2025-04-07 13:22:27 +08:00
aes-gcm-aesni-x86_64.S crypto: x86/aes-gcm - rewrite the AES-NI optimized AES-GCM 2024-06-07 19:47:58 +08:00
aes-gcm-avx10-x86_64.S crypto: x86/aes-gcm - tune better for AMD CPUs 2024-12-21 22:46:24 +08:00
aes-xts-avx-x86_64.S crypto: x86/aes-xts - optimize _compute_first_set_of_tweaks for AVX-512 2025-04-07 13:22:28 +08:00
aesni-intel_asm.S x86/cfi: Clean up linkage 2025-02-14 10:32:05 +01:00
aesni-intel_glue.c crypto: x86/aes - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
aria_aesni_avx2_glue.c crypto: x86/aria - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
aria_aesni_avx_glue.c crypto: x86/aria - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
aria_gfni_avx512_glue.c crypto: x86/aria - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
aria-aesni-avx2-asm_64.S crypto: x86/aria - Use RIP-relative addressing 2023-04-20 18:20:04 +08:00
aria-aesni-avx-asm_64.S crypto: x86/aria - Use 16 byte alignment for GFNI constant vectors 2023-05-24 18:10:27 +08:00
aria-avx.h crypto: x86/aria - implement aria-avx512 2023-01-06 17:15:47 +08:00
aria-gfni-avx512-asm_64.S crypto: x86/aria - Use RIP-relative addressing 2023-04-20 18:20:04 +08:00
blowfish_glue.c crypto: x86 - remove assignments of 0 to cra_alignmask 2024-12-14 17:21:44 +08:00
blowfish-x86_64-asm_64.S crypto: x86/blowfish - Eliminate use of SYM_TYPED_FUNC_START in asm 2023-02-10 17:20:19 +08:00
camellia_aesni_avx2_glue.c crypto: x86/camellia - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
camellia_aesni_avx_glue.c crypto: x86/camellia - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
camellia_glue.c crypto: x86 - remove assignments of 0 to cra_alignmask 2024-12-14 17:21:44 +08:00
camellia-aesni-avx2-asm_64.S x86,kcfi: Fix EXPORT_SYMBOL vs kCFI 2025-02-14 10:32:05 +01:00
camellia-aesni-avx-asm_64.S x86,kcfi: Fix EXPORT_SYMBOL vs kCFI 2025-02-14 10:32:05 +01:00
camellia-x86_64-asm_64.S x86,kcfi: Fix EXPORT_SYMBOL vs kCFI 2025-02-14 10:32:05 +01:00
camellia.h crypto: x86 - use local headers for x86 specific shared declarations 2021-01-14 17:10:30 +11:00
cast5_avx_glue.c crypto: x86/cast - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
cast5-avx-x86_64-asm_64.S crypto: x86/cast5 - Remove unused cast5_ctr_16way 2024-10-10 17:08:02 +08:00
cast6_avx_glue.c crypto: x86/cast - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
cast6-avx-x86_64-asm_64.S crypto: x86/cast6 - Use RIP-relative addressing 2023-04-20 18:20:04 +08:00
curve25519-x86_64.c crypto: x86 - add missing MODULE_DESCRIPTION() macros 2024-06-07 19:46:39 +08:00
des3_ede_glue.c crypto: skcipher - Make skcipher_walk src.virt.addr const 2025-03-15 16:21:22 +08:00
des3_ede-asm_64.S crypto: x86/des3 - Use RIP-relative addressing 2023-04-20 18:20:04 +08:00
ecb_cbc_helpers.h crypto: x86 - exit fpu context earlier in ECB/CBC macros 2023-02-03 12:54:54 +08:00
ghash-clmulni-intel_asm.S crypto: x86/ghash - Use API partial block handling 2025-04-23 11:33:47 +08:00
ghash-clmulni-intel_glue.c crypto: x86/ghash - Use API partial block handling 2025-04-23 11:33:47 +08:00
glue_helper-asm-avx2.S crypto: x86/glue-helper - drop CTR helper routines 2021-01-14 17:10:28 +11:00
glue_helper-asm-avx.S crypto: x86/glue-helper - drop CTR helper routines 2021-01-14 17:10:28 +11:00
Kconfig crypto: x86/sha256 - implement library instead of shash 2025-05-05 18:20:44 +08:00
Makefile crypto: x86/sha256 - implement library instead of shash 2025-05-05 18:20:44 +08:00
nh-avx2-x86_64.S crypto: x86/nh-avx2 - add missing vzeroupper 2024-04-12 15:07:52 +08:00
nh-sse2-x86_64.S crypto: x86/nhpoly1305 - eliminate unnecessary CFI wrappers 2022-11-25 17:39:19 +08:00
nhpoly1305-avx2-glue.c crypto: x86/nhpoly1305 - implement ->digest 2023-10-20 13:39:25 +08:00
nhpoly1305-sse2-glue.c crypto: x86/nhpoly1305 - implement ->digest 2023-10-20 13:39:25 +08:00
polyval-clmulni_asm.S crypto: x86/polyval - Add PCLMULQDQ accelerated implementation of POLYVAL 2022-06-10 16:40:17 +08:00
polyval-clmulni_glue.c crypto: x86/polyval - Use API partial block handling 2025-04-28 19:40:54 +08:00
serpent_avx2_glue.c crypto: x86/serpent - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
serpent_avx_glue.c crypto: x86/serpent - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
serpent_sse2_glue.c crypto: x86/serpent - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
serpent-avx2-asm_64.S crypto: x86/serpent: Remove redundant alignments 2022-10-17 16:41:01 +02:00
serpent-avx-x86_64-asm_64.S x86,kcfi: Fix EXPORT_SYMBOL vs kCFI 2025-02-14 10:32:05 +01:00
serpent-avx.h crypto: x86 - use local headers for x86 specific shared declarations 2021-01-14 17:10:30 +11:00
serpent-sse2-i586-asm_32.S x86: Prepare asm files for straight-line-speculation 2021-12-08 12:25:37 +01:00
serpent-sse2-x86_64-asm_64.S x86: Prepare asm files for straight-line-speculation 2021-12-08 12:25:37 +01:00
serpent-sse2.h crypto: x86 - use local headers for x86 specific shared declarations 2021-01-14 17:10:30 +11:00
sha1_avx2_x86_64_asm.S crypto: x86/sha - Use local .L symbols for code 2023-04-20 18:20:04 +08:00
sha1_ni_asm.S - Add the call depth tracking mitigation for Retbleed which has 2022-12-14 15:03:00 -08:00
sha1_ssse3_asm.S crypto: x86/sha1 - fix possible crash with CFI enabled 2022-11-25 17:39:19 +08:00
sha1_ssse3_glue.c crypto: x86/sha1 - Use API partial block handling 2025-04-23 11:33:47 +08:00
sha512_ssse3_glue.c crypto: x86/sha512 - Use API partial block handling 2025-04-23 15:52:46 +08:00
sha512-avx2-asm.S crypto: x86/sha512-avx2 - add missing vzeroupper 2024-04-12 15:07:52 +08:00
sha512-avx-asm.S arch/x86: Fix typos 2024-01-03 11:46:22 +01:00
sha512-ssse3-asm.S arch/x86: Fix typos 2024-01-03 11:46:22 +01:00
sm3_avx_glue.c crypto: x86/sm3 - Use API partial block handling 2025-04-23 15:52:47 +08:00
sm3-avx-asm_64.S - Add the call depth tracking mitigation for Retbleed which has 2022-12-14 15:03:00 -08:00
sm4_aesni_avx2_glue.c crypto: x86/sm4 - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
sm4_aesni_avx_glue.c crypto: x86/sm4 - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
sm4-aesni-avx2-asm_64.S crypto: x86/sm4 - Remove cfb(sm4) 2023-12-08 11:59:45 +08:00
sm4-aesni-avx-asm_64.S crypto: x86/sm4 - Remove cfb(sm4) 2023-12-08 11:59:45 +08:00
sm4-avx.h crypto: x86/sm4 - Remove cfb(sm4) 2023-12-08 11:59:45 +08:00
twofish_avx_glue.c crypto: x86/twofish - stop using the SIMD helper 2025-04-07 13:22:27 +08:00
twofish_glue_3way.c crypto: x86/twofish - Switch to new Intel CPU model defines 2024-05-31 17:12:21 +08:00
twofish_glue.c crypto: x86 - remove assignments of 0 to cra_alignmask 2024-12-14 17:21:44 +08:00
twofish-avx-x86_64-asm_64.S crypto: twofish: Remove redundant alignments 2022-10-17 16:41:03 +02:00
twofish-i586-asm_32.S x86: Prepare asm files for straight-line-speculation 2021-12-08 12:25:37 +01:00
twofish-x86_64-asm_64-3way.S x86,kcfi: Fix EXPORT_SYMBOL vs kCFI 2025-02-14 10:32:05 +01:00
twofish-x86_64-asm_64.S x86,kcfi: Fix EXPORT_SYMBOL vs kCFI 2025-02-14 10:32:05 +01:00
twofish.h crypto: x86 - use local headers for x86 specific shared declarations 2021-01-14 17:10:30 +11:00