This series updates crypto_simd to support wrapping AEADs, then makes all AEADs that implement the same functionality use crypto_simd instead. This simplifies the code, and it also fixes the bug where these algorithms modify the user-provided aead_request. This was a problem because users may expect to be able to use the same aead_request for another encryption/decryption without reinitializing everything. The last patch removes the test workaround now that this bug is fixed. Eric Biggers (9): crypto: simd - support wrapping AEAD algorithms crypto: x86/aesni - convert to use skcipher SIMD bulk registration crypto: x86/aesni - convert to use AEAD SIMD helpers crypto: x86/aegis128 - convert to use AEAD SIMD helpers crypto: x86/aegis128l - convert to use AEAD SIMD helpers crypto: x86/aegis256 - convert to use AEAD SIMD helpers crypto: x86/morus640 - convert to use AEAD SIMD helpers crypto: x86/morus1280 - convert to use AEAD SIMD helpers crypto: testmgr - remove workaround for AEADs that modify aead_request arch/x86/crypto/aegis128-aesni-glue.c | 157 +++------------ arch/x86/crypto/aegis128l-aesni-glue.c | 157 +++------------ arch/x86/crypto/aegis256-aesni-glue.c | 157 +++------------ arch/x86/crypto/aesni-intel_glue.c | 204 ++----------------- arch/x86/crypto/morus1280-avx2-glue.c | 12 +- arch/x86/crypto/morus1280-sse2-glue.c | 12 +- arch/x86/crypto/morus1280_glue.c | 85 -------- arch/x86/crypto/morus640-sse2-glue.c | 12 +- arch/x86/crypto/morus640_glue.c | 85 -------- crypto/Kconfig | 10 +- crypto/simd.c | 269 +++++++++++++++++++++++++ crypto/testmgr.c | 3 - include/crypto/internal/simd.h | 20 ++ include/crypto/morus1280_glue.h | 79 ++------ include/crypto/morus640_glue.h | 79 ++------ 15 files changed, 471 insertions(+), 870 deletions(-) -- 2.21.0