Re: [PATCH v3 5/5] crypto: AES CBC multi-buffer glue code

From: Herbert Xu
Date: Thu Nov 26 2015 - 03:50:03 EST


On Tue, Nov 24, 2015 at 10:30:06AM -0800, Tim Chen wrote:
>
> On the decrypt path, we don't need to use multi-buffer algorithm
> as aes-cbc decrypt can be parallelized inherently on a single
> request. So most of the time the outer layer algorithm
> cbc_mb_async_ablk_decrypt can bypass mcryptd and
> invoke mb_aes_cbc_decrypt synchronously
> to do aes_cbc_dec when fpu is available.
> This avoids the overhead of going through mcryptd. Hence
> the use of blkcipher on the inner layer. For the mcryptd
> path, we will complete a decrypt request in one shot so
> blkcipher usage should be fine.

I think there is a misunderstanding here. Just because you're
using/exporting through the ablkcipher interface doesn't mean
that you are asynchrounous. For example, all blkcipher algorithms
can be accessed through the ablkcipher interface and they of course
remain synchrounous.

So I don't see how using an ablkcipher in the inner layer changes
anything at all. You can still return immediately and not bother
with completion functions when you are synchrounous.

Cheers,
--
Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/