diff options
author | Wei Yongjun <weiyongjun1@huawei.com> | 2022-11-14 11:07:40 +0000 |
---|---|---|
committer | Michael S. Tsirkin <mst@redhat.com> | 2022-12-28 05:28:10 -0500 |
commit | b1d65f717cd6305a396a8738e022c6f7c65cfbe8 (patch) | |
tree | 6e546ab023895bf628d16e621fd479ac54b004df /drivers | |
parent | a4722f64f924a9992efc08d141c21b2da02b70f3 (diff) | |
download | linux-b1d65f717cd6305a396a8738e022c6f7c65cfbe8.tar.bz2 |
virtio-crypto: fix memory leak in virtio_crypto_alg_skcipher_close_session()
'vc_ctrl_req' is alloced in virtio_crypto_alg_skcipher_close_session(),
and should be freed in the invalid ctrl_status->status error handling
case. Otherwise there is a memory leak.
Fixes: 0756ad15b1fe ("virtio-crypto: use private buffer for control request")
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Message-Id: <20221114110740.537276-1-weiyongjun@huaweicloud.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Gonglei <arei.gonglei@huawei.com>
Acked-by: zhenwei pi<pizhenwei@bytedance.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/crypto/virtio/virtio_crypto_skcipher_algs.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/crypto/virtio/virtio_crypto_skcipher_algs.c b/drivers/crypto/virtio/virtio_crypto_skcipher_algs.c index e553ccadbcbc..e5876286828b 100644 --- a/drivers/crypto/virtio/virtio_crypto_skcipher_algs.c +++ b/drivers/crypto/virtio/virtio_crypto_skcipher_algs.c @@ -239,7 +239,8 @@ static int virtio_crypto_alg_skcipher_close_session( pr_err("virtio_crypto: Close session failed status: %u, session_id: 0x%llx\n", ctrl_status->status, destroy_session->session_id); - return -EINVAL; + err = -EINVAL; + goto out; } err = 0; |