And while here, simplify dequeue_complete_req() a bit.

Signed-off-by: Phil Sutter <phil.sut...@viprinet.com>
---
 drivers/crypto/mv_cesa.c |   21 ++++++---------------
 1 files changed, 6 insertions(+), 15 deletions(-)

diff --git a/drivers/crypto/mv_cesa.c b/drivers/crypto/mv_cesa.c
index 86b73d1..7b2b693 100644
--- a/drivers/crypto/mv_cesa.c
+++ b/drivers/crypto/mv_cesa.c
@@ -70,7 +70,6 @@ struct req_progress {
        struct scatterlist *src_sg;
        struct scatterlist *dst_sg;
        void (*complete) (void);
-       void (*process) (void);
 
        /* src mostly */
        int sg_src_left;
@@ -650,25 +649,17 @@ static void mv_hash_algo_completion(void)
 static void dequeue_complete_req(void)
 {
        struct crypto_async_request *req = cpg->cur_req;
-       cpg->p.hw_processed_bytes += cpg->p.crypt_len;
-       cpg->p.crypt_len = 0;
 
        mv_dma_clear();
        cpg->u32_usage = 0;
 
        BUG_ON(cpg->eng_st != ENGINE_W_DEQUEUE);
-       if (cpg->p.hw_processed_bytes < cpg->p.hw_nbytes) {
-               /* process next scatter list entry */
-               cpg->eng_st = ENGINE_BUSY;
-               setup_data_in();
-               cpg->p.process();
-       } else {
-               cpg->p.complete();
-               cpg->eng_st = ENGINE_IDLE;
-               local_bh_disable();
-               req->complete(req, 0);
-               local_bh_enable();
-       }
+
+       cpg->p.complete();
+       cpg->eng_st = ENGINE_IDLE;
+       local_bh_disable();
+       req->complete(req, 0);
+       local_bh_enable();
 }
 
 static int count_sgs(struct scatterlist *sl, unsigned int total_bytes)
-- 
1.7.3.4

--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to