提交 ddacc621 编写于 作者: S Steffen Trumtrar 提交者: Herbert Xu

crypto: sahara - use the backlog

With commit

	7e77bdeb crypto: af_alg - fix backlog handling

in place, the backlog works under all circumstances where it previously failed, atleast
for the sahara driver. Use it.
Signed-off-by: NSteffen Trumtrar <s.trumtrar@pengutronix.de>
Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
上级 016baaa1
...@@ -1096,15 +1096,20 @@ static int sahara_queue_manage(void *data) ...@@ -1096,15 +1096,20 @@ static int sahara_queue_manage(void *data)
{ {
struct sahara_dev *dev = (struct sahara_dev *)data; struct sahara_dev *dev = (struct sahara_dev *)data;
struct crypto_async_request *async_req; struct crypto_async_request *async_req;
struct crypto_async_request *backlog;
int ret = 0; int ret = 0;
do { do {
__set_current_state(TASK_INTERRUPTIBLE); __set_current_state(TASK_INTERRUPTIBLE);
mutex_lock(&dev->queue_mutex); mutex_lock(&dev->queue_mutex);
backlog = crypto_get_backlog(&dev->queue);
async_req = crypto_dequeue_request(&dev->queue); async_req = crypto_dequeue_request(&dev->queue);
mutex_unlock(&dev->queue_mutex); mutex_unlock(&dev->queue_mutex);
if (backlog)
backlog->complete(backlog, -EINPROGRESS);
if (async_req) { if (async_req) {
if (crypto_tfm_alg_type(async_req->tfm) == if (crypto_tfm_alg_type(async_req->tfm) ==
CRYPTO_ALG_TYPE_AHASH) { CRYPTO_ALG_TYPE_AHASH) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册