Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8cf740ae authored by Romain Perier's avatar Romain Perier Committed by Herbert Xu
Browse files

crypto: marvell - Don't copy IV vectors from the _process op for ciphers



The IV output vectors should only be copied from the _complete operation
and not from the _process operation, i.e only from the operation that is
designed to copy the result of the request to the right location. This
copy is already done in the _complete operation, so this commit removes
the duplicated code in the _process op.

Fixes: 3610d6cd5231 ("crypto: marvell - Add a complete...")
Signed-off-by: default avatarRomain Perier <romain.perier@free-electrons.com>
Acked-by: default avatarBoris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 4816c940
Loading
Loading
Loading
Loading
+1 −10
Original line number Diff line number Diff line
@@ -139,20 +139,11 @@ static int mv_cesa_ablkcipher_process(struct crypto_async_request *req,
	struct ablkcipher_request *ablkreq = ablkcipher_request_cast(req);
	struct mv_cesa_ablkcipher_req *creq = ablkcipher_request_ctx(ablkreq);
	struct mv_cesa_req *basereq = &creq->base;
	unsigned int ivsize;
	int ret;

	if (mv_cesa_req_get_type(basereq) == CESA_STD_REQ)
		return mv_cesa_ablkcipher_std_process(ablkreq, status);

	ret = mv_cesa_dma_process(basereq, status);
	if (ret)
		return ret;

	ivsize = crypto_ablkcipher_ivsize(crypto_ablkcipher_reqtfm(ablkreq));
	memcpy_fromio(ablkreq->info, basereq->chain.last->data, ivsize);

	return 0;
	return mv_cesa_dma_process(basereq, status);
}

static void mv_cesa_ablkcipher_step(struct crypto_async_request *req)