Hi, > The skcipher could have been of the async variant which may return > from skcipher_encrypt() with -EINPROGRESS after having queued the > request. > The FILS AEAD implementation here does not have code for dealing with > that possibility, so allocate a sync cipher explicitly to avoid > potential issues with hardware accelerators. > - tfm2 = crypto_alloc_skcipher("ctr(aes)", 0, 0); > + tfm2 = crypto_alloc_skcipher("ctr(aes)", 0, > CRYPTO_ALG_ASYNC); I'll apply this, after having found some code elsewhere that does something similar, but I'll note that this is super confusing, since the only documentation mentioning this flag says: The mask flag restricts the type of cipher. The only allowed flag is CRYPTO_ALG_ASYNC to restrict the cipher lookup function to asynchronous ciphers. Usually, a caller provides a 0 for the mask flag. (I have a vague feeling the first sentence was intended to be documentation for the algorithm *implementation* specifying the flag, and the second for a caller doing a lookup, or something strange?) johannes