[PATCH] virtio-vdpa: Fix cpumask memory leak in virtio_vdpa_find_vqs()

Dragos Tatulea posted 1 patch 2 years, 6 months ago
drivers/virtio/virtio_vdpa.c | 2 ++
1 file changed, 2 insertions(+)
[PATCH] virtio-vdpa: Fix cpumask memory leak in virtio_vdpa_find_vqs()
Posted by Dragos Tatulea 2 years, 6 months ago
From: Gal Pressman <gal@nvidia.com>

Free the cpumask allocated by create_affinity_masks() before returning
from the function.

Fixes: 3dad56823b53 ("virtio-vdpa: Support interrupt affinity spreading mechanism")
Signed-off-by: Gal Pressman <gal@nvidia.com>
Reviewed-by: Dragos Tatulea <dtatulea@nvidia.com>
---
 drivers/virtio/virtio_vdpa.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/virtio/virtio_vdpa.c b/drivers/virtio/virtio_vdpa.c
index 989e2d7184ce..961161da5900 100644
--- a/drivers/virtio/virtio_vdpa.c
+++ b/drivers/virtio/virtio_vdpa.c
@@ -393,11 +393,13 @@ static int virtio_vdpa_find_vqs(struct virtio_device *vdev, unsigned int nvqs,
 	cb.callback = virtio_vdpa_config_cb;
 	cb.private = vd_dev;
 	ops->set_config_cb(vdpa, &cb);
+	kfree(masks);
 
 	return 0;
 
 err_setup_vq:
 	virtio_vdpa_del_vqs(vdev);
+	kfree(masks);
 	return err;
 }
 
-- 
2.41.0
Re: [PATCH] virtio-vdpa: Fix cpumask memory leak in virtio_vdpa_find_vqs()
Posted by Yongji Xie 2 years, 6 months ago
On Thu, Jul 27, 2023 at 3:11 AM Dragos Tatulea <dtatulea@nvidia.com> wrote:
>
> From: Gal Pressman <gal@nvidia.com>
>
> Free the cpumask allocated by create_affinity_masks() before returning
> from the function.
>
> Fixes: 3dad56823b53 ("virtio-vdpa: Support interrupt affinity spreading mechanism")
> Signed-off-by: Gal Pressman <gal@nvidia.com>
> Reviewed-by: Dragos Tatulea <dtatulea@nvidia.com>

Reviewed-by: Xie Yongji <xieyongji@bytedance.com>

Thanks,
Yongji
Re: [PATCH] virtio-vdpa: Fix cpumask memory leak in virtio_vdpa_find_vqs()
Posted by Jason Wang 2 years, 6 months ago
On Thu, Jul 27, 2023 at 3:11 AM Dragos Tatulea <dtatulea@nvidia.com> wrote:
>
> From: Gal Pressman <gal@nvidia.com>
>
> Free the cpumask allocated by create_affinity_masks() before returning
> from the function.
>
> Fixes: 3dad56823b53 ("virtio-vdpa: Support interrupt affinity spreading mechanism")
> Signed-off-by: Gal Pressman <gal@nvidia.com>
> Reviewed-by: Dragos Tatulea <dtatulea@nvidia.com>

Acked-by: Jason Wang <jasowang@redhat.com>

Thanks

> ---
>  drivers/virtio/virtio_vdpa.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/virtio/virtio_vdpa.c b/drivers/virtio/virtio_vdpa.c
> index 989e2d7184ce..961161da5900 100644
> --- a/drivers/virtio/virtio_vdpa.c
> +++ b/drivers/virtio/virtio_vdpa.c
> @@ -393,11 +393,13 @@ static int virtio_vdpa_find_vqs(struct virtio_device *vdev, unsigned int nvqs,
>         cb.callback = virtio_vdpa_config_cb;
>         cb.private = vd_dev;
>         ops->set_config_cb(vdpa, &cb);
> +       kfree(masks);
>
>         return 0;
>
>  err_setup_vq:
>         virtio_vdpa_del_vqs(vdev);
> +       kfree(masks);
>         return err;
>  }
>
> --
> 2.41.0
>