linux/lib/crypto
Linus Torvalds 1896ce8eb6 Optimize fsverity with 2-way interleaved hashing
Add support for 2-way interleaved SHA-256 hashing to lib/crypto/, and
 make fsverity use it for faster file data verification. This improves
 fsverity performance on many x86_64 and arm64 processors.
 
 Later, I plan to make dm-verity use this too.
 -----BEGIN PGP SIGNATURE-----
 
 iIoEABYIADIWIQSacvsUNc7UX4ntmEPzXCl4vpKOKwUCaNg4/RQcZWJpZ2dlcnNA
 a2VybmVsLm9yZwAKCRDzXCl4vpKOK4fMAP9Xz00JNDfJ+mOVHIYOhAlWFGnug0X1
 cvoRf4QXchNlbwD9HTJQQDQXnbsPy3QPrUVfl2FqCW7c6vRlBJijhD6j4wE=
 =6dCR
 -----END PGP SIGNATURE-----

Merge tag 'fsverity-for-linus' of git://git.kernel.org/pub/scm/fs/fsverity/linux

Pull interleaved SHA-256 hashing support from Eric Biggers:
 "Optimize fsverity with 2-way interleaved hashing

  Add support for 2-way interleaved SHA-256 hashing to lib/crypto/, and
  make fsverity use it for faster file data verification. This improves
  fsverity performance on many x86_64 and arm64 processors.

  Later, I plan to make dm-verity use this too"

* tag 'fsverity-for-linus' of git://git.kernel.org/pub/scm/fs/fsverity/linux:
  fsverity: Use 2-way interleaved SHA-256 hashing when supported
  fsverity: Remove inode parameter from fsverity_hash_block()
  lib/crypto: tests: Add tests and benchmark for sha256_finup_2x()
  lib/crypto: x86/sha256: Add support for 2-way interleaved hashing
  lib/crypto: arm64/sha256: Add support for 2-way interleaved hashing
  lib/crypto: sha256: Add support for 2-way interleaved hashing
2025-09-29 15:55:20 -07:00
..
arm lib/crypto: curve25519: Consolidate into single module 2025-09-06 16:32:43 -07:00
arm64 Optimize fsverity with 2-way interleaved hashing 2025-09-29 15:55:20 -07:00
mips lib/crypto: chacha: Consolidate into single module 2025-08-29 09:50:19 -07:00
mpi
powerpc lib/crypto: curve25519: Consolidate into single module 2025-09-06 16:32:43 -07:00
riscv lib/crypto: chacha: Consolidate into single module 2025-08-29 09:50:19 -07:00
s390 lib/crypto: chacha: Consolidate into single module 2025-08-29 09:50:19 -07:00
sparc lib/crypto: Drop inline from all *_mod_init_arch() functions 2025-08-27 08:15:35 -07:00
tests Optimize fsverity with 2-way interleaved hashing 2025-09-29 15:55:20 -07:00
x86 Optimize fsverity with 2-way interleaved hashing 2025-09-29 15:55:20 -07:00
Kconfig lib/crypto: curve25519: Consolidate into single module 2025-09-06 16:32:43 -07:00
Makefile lib/crypto: curve25519: Consolidate into single module 2025-09-06 16:32:43 -07:00
aes.c
aescfb.c
aesgcm.c
arc4.c
blake2s.c lib/crypto: blake2s: Consolidate into single C translation unit 2025-08-29 09:50:19 -07:00
chacha-block-generic.c lib/crypto: chacha: Rename chacha.c to chacha-block-generic.c 2025-08-29 09:50:19 -07:00
chacha.c lib/crypto: chacha: Consolidate into single module 2025-08-29 09:50:19 -07:00
chacha20poly1305-selftest.c
chacha20poly1305.c
curve25519-fiat32.c
curve25519-hacl64.c
curve25519.c lib/crypto: curve25519: Consolidate into single module 2025-09-06 16:32:43 -07:00
des.c
gf128mul.c
hash_info.c
md5.c
memneq.c
poly1305-donna32.c
poly1305-donna64.c
poly1305.c lib/crypto: poly1305: Consolidate into single module 2025-08-29 09:49:18 -07:00
sha1.c
sha256.c lib/crypto: sha256: Add support for 2-way interleaved hashing 2025-09-17 13:09:39 -05:00
sha512.c
simd.c
sm3.c
utils.c