Messages in this thread | | | Subject | Re: [PATCH v4 5/5] crypto: AES CBC multi-buffer glue code | From | Tim Chen <> | Date | Thu, 10 Dec 2015 08:39:45 -0800 |
| |
On Thu, 2015-12-10 at 09:45 +0800, Herbert Xu wrote: > On Wed, Dec 09, 2015 at 09:23:14AM -0800, Tim Chen wrote: > > > > This is an internal algorithm. We are indeed casting the request > > to the outer ablkcipher request when we do the async cipher walk. > > The question remain: why does it have to be a blkcipher rather > than an ablkcipher? > > Cheers,
The inner cipher is called synchronously from the outer layer async cipher algorithm in cbc_mb_async_ablk_decrypt via
err = crypto_blkcipher_crt(child_tfm)->decrypt( &rctx->desc, req->dst, req->src, req->nbytes);
or directly by mcrytpd_queue_worker via mcryptd_blkcipher_crypt. We do not allow this operation to return something like EINPROGRESS.
But the walk of the scattered list is done with async walk.
Thanks.
Tim
| |