On 01/31/18 05:22 PM, Vakul Garg wrote:
> > > On second though in stable we should probably just disable async tfm
> > > allocations.
> > > It's simpler. But this approach is still good for -next
> > >
> > >
> > > Gilad
> >
> > I agree with Gilad, just disable async for now.
> >
>
> How to do it? Can you help with the api name?
*aead = crypto_alloc_aead("gcm(aes)", 0, CRYPTO_ALG_ASYNC);
https://github.com/ktls/net_next_ktls/commit/f3b9b402e755e4b0623fa83f88137173fc249f2d
> > If the flag MSG_DONTWAIT is set, we should be returning -EINPROGRESS and
> > not wait for a response. I had started working on a patch for that, but
> > it's
> > pretty tricky to get right.
>
> Can you point me to your WIP code branch for this?
https://github.com/ktls/net_next_ktls/commit/9cc839aa551ed972d148ecebf353b25ee93543b9
> If MSG_DONTWAIT is not used, will it be sane if enqueue the crypto request to
> accelerator and return to user space back so that user space can send more
> plaintext data while
> crypto accelerator is working in parallel?
Right, that's roughly what the above does. I believe the tricky
unfinished part was getting poll() to work correctly if there is an
async crypto request outstanding. Currently the tls poll() just
relies on backpressure from do_tcp_sendpages.