This patch series introduces the optional async calling convention for acomp. This will be extended to all other Crypto API types that support async. With this a stack request is setup initially and will be used as long as the algorithm can complete synchronously. If it cannot then EAGAIN is returned, and the caller may choose to allocate a dynamic request through the REQUEST_CLONE call and then redo the call asynchronously. This series is based on top of https://lore.kernel.org/linux-crypto/cover.1744018301.git.herbert@xxxxxxxxxxxxxxxxxxx Herbert Xu (7): crypto: api - Add helpers to manage request flags crypto: acomp - Use request flag helpers and add acomp_request_flags crypto: acomp - Add ACOMP_FBREQ_ON_STACK crypto: iaa - Switch to ACOMP_FBREQ_ON_STACK crypto: acomp - Add ACOMP_REQUEST_CLONE ubifs: Use ACOMP_REQUEST_CLONE crypto: acomp - Remove ACOMP_REQUEST_ALLOC crypto/acompress.c | 37 +-- drivers/crypto/intel/iaa/iaa_crypto_main.c | 5 +- fs/ubifs/compress.c | 251 ++++++++++----------- include/crypto/acompress.h | 48 ++-- include/crypto/algapi.h | 5 + include/crypto/internal/acompress.h | 33 ++- include/linux/crypto.h | 24 ++ 7 files changed, 227 insertions(+), 176 deletions(-) -- 2.39.5