All of lore.kernel.org
 help / color / mirror / Atom feed
From: Herbert Xu <herbert@gondor.apana.org.au>
To: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
Cc: linux-crypto@vger.kernel.org, qat-linux@intel.com,
	Vlad Dronov <vdronov@redhat.com>,
	Wojciech Ziemba <wojciech.ziemba@intel.com>,
	Adam Guerin <adam.guerin@intel.com>
Subject: Re: [PATCH 8/9] crypto: qat - expose deflate through acomp api for QAT GEN2
Date: Fri, 16 Sep 2022 17:41:11 +0800	[thread overview]
Message-ID: <YyREt8XK7ei0Owq4@gondor.apana.org.au> (raw)
In-Reply-To: <YyMj9yKMSTC4Iw0s@gcabiddu-mobl1.ger.corp.intel.com>

On Thu, Sep 15, 2022 at 02:09:11PM +0100, Giovanni Cabiddu wrote:
>
> > Here's a suggestion.  Start with whatever value you want (e.g.,
> > src * 2), attempt the decompression, if it fails because the
> > space is to small, then double it and retry the operation.
>
> I prototyped the solution you proposed and it introduces complexity,
> still doesn't fully solve the problem and it is not performant. See
> below*.

I don't understand how it can be worse than your existing patch.

I'm suggesting that you start with your current estimate, and only
fallback to allocating a bigger buffer in case that overflows.  So
it should be exactly the same as your current patch as the fallback
path would only activate in cases where your patch would have failed
anyway.

> We propose instead to match the destination buffer size used in scomp
> for the NULL pointer use case, i.e. 128KB:
> https://elixir.bootlin.com/linux/v6.0-rc5/source/include/crypto/internal/scompress.h#L13
> Since the are no users of acomp with this use-case in the kernel, we
> believe this will be sufficient.

Once we start imposing arbitrary limits in the driver, then users
will forever be burdened with this.  So that's why I want to avoid
adding such limits.

The whole point of having this feature in the acomp API is to avoid
having users such as ipcomp preallocate huge buffers for the unlikely
case of an exceptionally large decompressed result.

Thanks,
-- 
Email: Herbert Xu <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

  reply	other threads:[~2022-09-16  9:41 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-18 18:01 [PATCH 0/9] crypto: qat - enable compression deflate algorithm Giovanni Cabiddu
2022-08-18 18:01 ` [PATCH 1/9] crypto: qat - relocate bufferlist logic Giovanni Cabiddu
2022-08-18 18:01 ` [PATCH 2/9] crypto: qat - change bufferlist logic interface Giovanni Cabiddu
2022-08-18 18:01 ` [PATCH 3/9] crypto: qat - generalize crypto request buffers Giovanni Cabiddu
2022-08-18 18:01 ` [PATCH 4/9] crypto: qat - extend buffer list interface Giovanni Cabiddu
2022-08-18 18:01 ` [PATCH 5/9] crypto: qat - relocate backlog related structures Giovanni Cabiddu
2022-08-18 18:01 ` [PATCH 6/9] crypto: qat - relocate qat_algs_alloc_flags() Giovanni Cabiddu
2022-08-18 18:01 ` [PATCH 7/9] crypto: qat - rename and relocate GEN2 config function Giovanni Cabiddu
2022-08-18 18:01 ` [PATCH 8/9] crypto: qat - expose deflate through acomp api for QAT GEN2 Giovanni Cabiddu
2022-08-26 10:28   ` Herbert Xu
2022-08-26 14:21     ` Giovanni Cabiddu
2022-08-30  9:08       ` Herbert Xu
2022-09-15 13:09         ` Giovanni Cabiddu
2022-09-16  9:41           ` Herbert Xu [this message]
2022-08-18 18:01 ` [PATCH 9/9] crypto: qat - enable deflate for QAT GEN4 Giovanni Cabiddu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YyREt8XK7ei0Owq4@gondor.apana.org.au \
    --to=herbert@gondor.apana.org.au \
    --cc=adam.guerin@intel.com \
    --cc=giovanni.cabiddu@intel.com \
    --cc=linux-crypto@vger.kernel.org \
    --cc=qat-linux@intel.com \
    --cc=vdronov@redhat.com \
    --cc=wojciech.ziemba@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.