On Fri, Mar 29, 2024 at 03:55:40PM +0530, Srish Srinivasan wrote: > From: Jakub Kicinski <kuba@xxxxxxxxxx> > > commit 8590541473188741055d27b955db0777569438e3 upstream > > Since we're setting the CRYPTO_TFM_REQ_MAY_BACKLOG flag on our > requests to the crypto API, crypto_aead_{encrypt,decrypt} can return > -EBUSY instead of -EINPROGRESS in valid situations. For example, when > the cryptd queue for AESNI is full (easy to trigger with an > artificially low cryptd.cryptd_max_cpu_qlen), requests will be enqueued > to the backlog but still processed. In that case, the async callback > will also be called twice: first with err == -EINPROGRESS, which it > seems we can just ignore, then with err == 0. > > Compared to Sabrina's original patch this version uses the new > tls_*crypt_async_wait() helpers and converts the EBUSY to > EINPROGRESS to avoid having to modify all the error handling > paths. The handling is identical. > > Fixes: a54667f6728c ("tls: Add support for encryption using async offload accelerator") > Fixes: 94524d8fc965 ("net/tls: Add support for async decryption of tls records") > Co-developed-by: Sabrina Dubroca <sd@xxxxxxxxxxxxxxx> > Signed-off-by: Sabrina Dubroca <sd@xxxxxxxxxxxxxxx> > Link: https://lore.kernel.org/netdev/9681d1febfec295449a62300938ed2ae66983f28.1694018970.git.sd@xxxxxxxxxxxxxxx/ > Signed-off-by: Jakub Kicinski <kuba@xxxxxxxxxx> > Reviewed-by: Simon Horman <horms@xxxxxxxxxx> > Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx> > Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> > [Srish: v2: fixed hunk failures > fixed merge-conflict in stable branch linux-6.1.y, > needs to go on top of https://lore.kernel.org/stable/20240307155930.913525-1-lee@xxxxxxxxxx/] Identical do what I queued up for v1, but oh well :) thanks, greg k-h