Re: [RFC PATCH v1 01/13] crypto: acomp - Add a poll() operation to acomp_alg and acomp_req
From: Herbert Xu
Date: Fri Oct 18 2024 - 03:57:13 EST
On Thu, Oct 17, 2024 at 11:40:49PM -0700, Kanchana P Sridhar wrote:
> For async compress/decompress, provide a way for the caller to poll
> for compress/decompress completion, rather than wait for an interrupt
> to signal completion.
>
> Callers can submit a compress/decompress using crypto_acomp_compress
> and decompress and rather than wait on a completion, call
> crypto_acomp_poll() to check for completion.
>
> This is useful for hardware accelerators where the overhead of
> interrupts and waiting for completions is too expensive. Typically
> the compress/decompress hw operations complete very quickly and in the
> vast majority of cases, adding the overhead of interrupt handling and
> waiting for completions simply adds unnecessary delays and cancels the
> gains of using the hw acceleration.
>
> Signed-off-by: Tom Zanussi <tom.zanussi@xxxxxxxxxxxxxxx>
> Signed-off-by: Kanchana P Sridhar <kanchana.p.sridhar@xxxxxxxxx>
> ---
> crypto/acompress.c | 1 +
> include/crypto/acompress.h | 18 ++++++++++++++++++
> include/crypto/internal/acompress.h | 1 +
> 3 files changed, 20 insertions(+)
How about just adding a request flag that tells the driver to
make the request synchronous if possible?
Something like
#define CRYPTO_ACOMP_REQ_POLL 0x00000001
Cheers,
--
Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt