mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2026-01-27 12:47:24 +01:00
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. Remove support for SHA-256 finalization from the ARMv8 CE assembly code, since the library does not yet support architecture-specific overrides of the finalization. (Support for that has been omitted for now, for simplicity and because usually it isn't performance-critical.) To match sha256_blocks_arch(), change the type of the nblocks parameter of the assembly functions from int or 'unsigned int' to size_t. Update the ARMv8 CE assembly function accordingly. The scalar and NEON assembly functions actually already treated it as size_t. While renaming the assembly files, also fix the naming quirks where "sha2" meant sha256, and "sha512" meant both sha256 and sha512. Reviewed-by: Ard Biesheuvel <ardb@kernel.org> Signed-off-by: Eric Biggers <ebiggers@google.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> |
||
|---|---|---|
| .. | ||
| crypto | ||
| clear_page.S | ||
| clear_user.S | ||
| copy_from_user.S | ||
| copy_page.S | ||
| copy_template.S | ||
| copy_to_user.S | ||
| crc-t10dif-core.S | ||
| crc-t10dif-glue.c | ||
| crc32-glue.c | ||
| crc32.S | ||
| csum.c | ||
| delay.c | ||
| error-inject.c | ||
| insn.c | ||
| kasan_sw_tags.S | ||
| Makefile | ||
| memchr.S | ||
| memcmp.S | ||
| memcpy.S | ||
| memset.S | ||
| mte.S | ||
| strchr.S | ||
| strcmp.S | ||
| strlen.S | ||
| strncmp.S | ||
| strnlen.S | ||
| strrchr.S | ||
| tishift.S | ||
| uaccess_flushcache.c | ||
| xor-neon.c | ||