Simplify the code and eliminate per-encryption-op dynamic memory allocations by switching from crypto_skcipher to crypto_sync_skcipher, and from dynamic request allocation to SYNC_SKCIPHER_REQUEST_ON_STACK.
Previously, this change would have made the x86 accelerated AES code no longer be used, which would have been very bad. However, I fixed that in 6.16. So we can make this simplification now. This patchset applies to fscrypt/for-next. The base-commit (listed below) can be found in next-20250708 Changed in v2: - Added patches that remove the gfp_t argument from functions that no longer need it. - Eliminated the goto in derive_key_aes(). - Improved commit messages. Eric Biggers (6): fscrypt: Don't use asynchronous CryptoAPI algorithms fscrypt: Drop FORBID_WEAK_KEYS flag for AES-ECB fscrypt: Switch to sync_skcipher and on-stack requests fscrypt: Remove gfp_t argument from fscrypt_crypt_data_unit() fscrypt: Remove gfp_t argument from fscrypt_encrypt_block_inplace() ceph: Remove gfp_t argument from ceph_fscrypt_encrypt_*() fs/ceph/crypto.c | 13 +++----- fs/ceph/crypto.h | 10 +++--- fs/ceph/file.c | 3 +- fs/ceph/inode.c | 3 +- fs/crypto/bio.c | 3 +- fs/crypto/crypto.c | 44 +++++++++----------------- fs/crypto/fname.c | 63 +++++++++++++------------------------ fs/crypto/fscrypt_private.h | 10 +++--- fs/crypto/keysetup.c | 23 +++++++------- fs/crypto/keysetup_v1.c | 56 ++++++++++++++------------------- fs/ubifs/crypto.c | 2 +- include/linux/fscrypt.h | 5 ++- 12 files changed, 91 insertions(+), 144 deletions(-) base-commit: b41c1d8d07906786c60893980d52688f31d114a6 -- 2.50.1