* Allow crypto requests to be dispatched to multiple crypto support
threads instead of executing the operation synchronously.
* Greatly improves crypto performance on SMP boxes. 25MB/s -> 80MB/s on
my quad.
* Currently the ivgen code gets in the way because it must be executed
synchronously before the data crypto op can be initiated. Further
performance improvements are possible.
crp->crp_callback = dmtc_crypto_cb_read_done;
crp->crp_desc = crd;
crp->crp_etype = 0;
- crp->crp_flags = CRYPTO_F_CBIFSYNC | CRYPTO_F_REL;
+ crp->crp_flags = CRYPTO_F_CBIFSYNC | CRYPTO_F_REL |
+ CRYPTO_F_BATCH;
crd->crd_alg = priv->crypto_alg;
crd->crd_key = (caddr_t)priv->crypto_key;
crp->crp_callback = dmtc_crypto_cb_write_done;
crp->crp_desc = crd;
crp->crp_etype = 0;
- crp->crp_flags = CRYPTO_F_CBIFSYNC | CRYPTO_F_REL;
+ crp->crp_flags = CRYPTO_F_CBIFSYNC | CRYPTO_F_REL |
+ CRYPTO_F_BATCH;
crd->crd_alg = priv->crypto_alg;
crd->crd_key = (caddr_t)priv->crypto_key;