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 <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt