Commit 262534dd authored by Tom Zanussi's avatar Tom Zanussi Committed by Herbert Xu
Browse files

crypto: iaa - Fix async_disable descriptor leak



The disable_async paths of iaa_compress/decompress() don't free idxd
descriptors in the async_disable case. Currently this only happens in
the testcases where req->dst is set to null. Add a test to free them
in those paths.

Signed-off-by: default avatarTom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 7248e523
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1222,7 +1222,7 @@ static int iaa_compress(struct crypto_tfm *tfm, struct acomp_req *req,

	*compression_crc = idxd_desc->iax_completion->crc;

	if (!ctx->async_mode)
	if (!ctx->async_mode || disable_async)
		idxd_free_desc(wq, idxd_desc);
out:
	return ret;
@@ -1468,7 +1468,7 @@ static int iaa_decompress(struct crypto_tfm *tfm, struct acomp_req *req,

	*dlen = req->dlen;

	if (!ctx->async_mode)
	if (!ctx->async_mode || disable_async)
		idxd_free_desc(wq, idxd_desc);

	/* Update stats */