Commit 63e8dd8d authored by Chenghai Huang's avatar Chenghai Huang Committed by Peng Zhang
Browse files

crypto: hisilicon/sec - Fix memory leak for sec resource release

mainline inclusion
from mainline-v6.10-rc1
commit bba4250757b4ae1680fea435a358d8093f254094
category: bugfix
bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAD2XU
CVE: CVE-2024-41002

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=bba4250757b4ae1680fea435a358d8093f254094



-------------------------------------------

The AIV is one of the SEC resources. When releasing resources,
it need to release the AIV resources at the same time.
Otherwise, memory leakage occurs.

The aiv resource release is added to the sec resource release
function.

Signed-off-by: default avatarChenghai Huang <huangchenghai2@huawei.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: default avatarZhangPeng <zhangpeng362@huawei.com>
parent c3bdf6db
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -479,8 +479,10 @@ static void sec_alg_resource_free(struct sec_ctx *ctx,

	if (ctx->pbuf_supported)
		sec_free_pbuf_resource(dev, qp_ctx->res);
	if (ctx->alg_type == SEC_AEAD)
	if (ctx->alg_type == SEC_AEAD) {
		sec_free_mac_resource(dev, qp_ctx->res);
		sec_free_aiv_resource(dev, qp_ctx->res);
	}
}

static int sec_alloc_qp_ctx_resource(struct hisi_qm *qm, struct sec_ctx *ctx,