Re: [PATCH] crypto: scompress - eliminate percpu scratch buffers
From: Herbert Xu <herbert@gondor.apana.org.au>
Date: 2017-07-21 13:31:41
On Fri, Jul 21, 2017 at 02:24:02PM +0100, Ard Biesheuvel wrote:
OK, but that doesn't really answer any of my questions: - Should we enforce that CRYPTO_ACOMP_ALLOC_OUTPUT is mutually exclusive with CRYPTO_TFM_REQ_MAY_SLEEP, or should crypto_scomp_sg_alloc() always use GFP_ATOMIC? We need one or the other, because the current situation is buggy.
Yeah I'm not surprised that it is broken, because there are currently no users of the API. We should fix the acomp API.
- Could we move the scratch buffers to the request structure instead? Or may that be allocated from softirq context as well?
Yes the IPcomp requests would be allocated from softirq context.
- Would you mind a patch that defers the allocation of the per-CPU buffers to the first invocation of crypto_scomp_init_tfm()?
Sure. That's what we currently do for IPcomp too.
- Would you mind a patch that makes the code only use the per-CPU buffers if we are running atomically to begin with?
That would mean dropping the first packet so no. Cheers, -- Email: Herbert Xu [off-list ref] Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt