twx-linux/include/crypto
Eric Biggers 39ee3970f2 lib/crypto: blake2s: Consolidate into single C translation unit
As was done with the other algorithms, reorganize the BLAKE2s code so
that the generic implementation and the arch-specific "glue" code is
consolidated into a single translation unit, so that the compiler will
inline the functions and automatically decide whether to include the
generic code in the resulting binary or not.

Similarly, also consolidate the build rules into
lib/crypto/{Makefile,Kconfig}.  This removes the last uses of
lib/crypto/{arm,x86}/{Makefile,Kconfig}, so remove those too.

Don't keep the !KMSAN dependency.  It was needed only for other
algorithms such as ChaCha that initialize memory from assembly code.

Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
Link: https://lore.kernel.org/r/20250827151131.27733-12-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
2025-08-29 09:50:19 -07:00
..
internal lib/crypto: blake2s: Consolidate into single C translation unit 2025-08-29 09:50:19 -07:00
acompress.h crypto: acomp - Clone folios properly 2025-05-05 18:20:45 +08:00
aead.h crypto: remove CONFIG_CRYPTO_STATS 2024-04-02 10:49:38 +08:00
aes.h crypto: lib - implement library version of AES in CFB mode 2024-05-09 22:30:51 +03:00
akcipher.h crypto: akcipher - Drop sign/verify operations 2024-10-05 13:22:04 +08:00
algapi.h module: remove meaningless 'name' parameter from __MODULE_INFO() 2025-06-24 20:33:31 +09:00
arc4.h
aria.h crypto: Prepare to move crypto_tfm_ctx 2022-12-02 18:12:40 +08:00
authenc.h crypto: Add 'krb5enc' hash and cipher AEAD algorithm 2025-03-02 21:39:34 +00:00
b128ops.h cyrpto/b128ops: Remove struct u128 2023-06-05 09:36:35 +02:00
blake2b.h crypto: arm/blake2b - Use API partial block handling 2025-04-23 11:33:46 +08:00
blake2s.h lib/crypto: blake2s: move hmac construction into wireguard 2022-01-18 13:03:55 +01:00
blowfish.h
cast5.h
cast6.h
cast_common.h
chacha20poly1305.h
chacha.h lib/crypto: chacha: Consolidate into single module 2025-08-29 09:50:19 -07:00
cryptd.h crypto: api - Replace kernel.h with the necessary inclusions 2021-12-17 16:59:48 +11:00
ctr.h crypto: ctr - Remove unnecessary header inclusions 2025-04-16 15:16:21 +08:00
curve25519.h
des.h
dh.h crypto: dh - split out deserialization code from crypto_dh_decode() 2022-03-03 10:47:50 +12:00
drbg.h crypto: drbg - reseed 'nopr' drbgs periodically from get_random_bytes() 2021-11-26 16:16:50 +11:00
ecc_curve.h crypto: ecc - Add nbits field to ecc_curve structure 2024-04-12 15:07:52 +08:00
ecdh.h crypto: ecc - Add NIST P521 curve parameters 2024-04-12 15:07:52 +08:00
engine.h crypto: engine - remove request batching support 2025-07-18 20:52:00 +10:00
gcm.h crypto: lib/aesgcm - Provide minimal library implementation 2022-11-11 18:14:59 +08:00
gf128mul.h crypto: lib/gf128mul - Remove some bbe deadcode 2024-12-21 22:46:24 +08:00
ghash.h crypto: riscv/ghash - Use API partial block handling 2025-04-23 11:33:47 +08:00
hash_info.h crypto: FIPS 202 SHA-3 register in hash info for IMA 2023-10-27 18:04:30 +08:00
hash.h This push fixes a regression that breaks hmac(sha3-224-s390). 2025-08-09 07:26:19 +03:00
hkdf.h crypto,fs: Separate out hkdf_extract() and hkdf_expand() 2025-03-20 16:53:53 -07:00
hmac.h
if_alg.h net: change proto and proto_ops accept type 2024-05-13 18:19:09 -06:00
kdf_sp800108.h crypto: kdf - add SP800-108 counter key derivation function 2021-11-26 16:25:17 +11:00
kpp.h crypto: remove CONFIG_CRYPTO_STATS 2024-04-02 10:49:38 +08:00
krb5.h rxrpc: Add the security index for yfs-rxgk 2025-04-14 17:36:41 -07:00
md5.h lib/crypto: md5: Add MD5 and HMAC-MD5 library functions 2025-08-26 12:52:27 -04:00
nhpoly1305.h
null.h crypto: null - remove the default null skcipher 2025-05-12 13:32:53 +08:00
padlock.h
pcrypt.h crypto: api - Replace kernel.h with the necessary inclusions 2021-12-17 16:59:48 +11:00
pkcs7.h
poly1305.h lib/crypto: poly1305: Remove unused function poly1305_is_arch_optimized() 2025-08-29 09:49:18 -07:00
polyval.h crypto: polyval-generic - Use API partial block handling 2025-04-28 19:40:54 +08:00
public_key.h crypto: asymmetric_keys - Remove unused functions 2024-11-02 18:23:24 +08:00
rng.h crypto: rng - fix documentation for crypto_rng_alg() 2025-05-05 18:20:45 +08:00
scatterwalk.h crypto: scatterwalk - Move skcipher walk and use it for memcpy_sglist 2025-04-28 19:45:26 +08:00
serpent.h
sha1.h lib/crypto: sha1: Add HMAC support 2025-07-14 08:59:20 -07:00
sha2.h lib/crypto: sha2: Add hmac_sha*_init_usingrawkey() 2025-07-14 08:20:37 -07:00
sha3.h crypto: zynqmp-sha - Fix partial block implementation 2025-05-05 18:20:46 +08:00
sig.h crypto: ecdsa - Fix NIST P521 key size reported by KEYCTL_PKEY_QUERY 2025-04-16 15:16:21 +08:00
skcipher.h crypto: skcipher - Set tfm in SYNC_SKCIPHER_REQUEST_ON_STACK 2025-02-22 15:56:03 +08:00
sm3_base.h crypto: lib/sm3 - Remove partial block helpers 2025-04-23 15:52:47 +08:00
sm3.h crypto: lib/sm3 - Remove partial block helpers 2025-04-23 15:52:47 +08:00
sm4.h crypto: sm4 - export sm4 constant arrays 2022-04-08 16:12:46 +08:00
streebog.h crypto: streebog - Use API partial block handling 2025-05-05 18:20:44 +08:00
twofish.h
utils.h move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
xts.h crypto: xts - drop xts_check_key() 2023-01-06 17:15:47 +08:00