Re: [PATCH v2 6.1.y] net: tls: handle backlogging of crypto requests

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux