diff options
| author | Eric Biggers <ebiggers@kernel.org> | 2026-09-27 15:43:09 -0700 |
|---|---|---|
| committer | Eric Biggers <ebiggers@kernel.org> | 2026-09-30 09:42:10 -0700 |
| commit | bd888e3dc9e06731eb78e4ad142c64c82a220edf (patch) | |
| tree | c4e222fd5da64f10370c18ca4bcb20916bf49dea /tools/perf/scripts/python/bin/stackcollapse-report | |
| parent | 00e767a6d2f2ecce45ed11d00d39257c54859594 (diff) | |
| download | linux-bd888e3dc9e06731eb78e4ad142c64c82a220edf.tar.gz linux-bd888e3dc9e06731eb78e4ad142c64c82a220edf.zip | |
lib/crypto: riscv/aes-cbc: Migrate optimized code into library
Instead of exposing the riscv-optimized AES-CBC and AES-CBC-CTS code via
a riscv-specific crypto_skcipher algorithm, just implement the AES-CBC
and AES-CBC-CTS library functions. This is simpler, it makes the
AES-CBC and AES-CBC-CTS library functions be riscv-optimized, and it
also fixes the longstanding issue where the riscv-optimized AES-CBC and
AES-CBC-CTS code was disabled by default. AES-CBC and AES-CBC-CTS
support still remains available through crypto_skcipher via
crypto/aes.c, but individual architectures no longer need to handle it.
To match what the library expects, update the assembly functions to
operate on struct aes_enckey or struct aes_key rather than struct
crypto_aes_ctx, and adjust the argument order.
Remove the single-block special case from the assembly code, since it's
already handled by lib/crypto/aes.c before calling aes_cbc_cts_*_arch().
Bump up the priority of the corresponding library-based algorithms on
riscv now that they no longer have to be lower than arch/riscv/crypto/.
Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
Link: https://patch.msgid.link/20260927224418.109759-19-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/bin/stackcollapse-report')
0 files changed, 0 insertions, 0 deletions
