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

From: Dragos Tatulea
Date: Wed Jul 26 2023 - 15:11:11 EST


From: Gal Pressman <gal@xxxxxxxxxx>

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@xxxxxxxxxx>
Reviewed-by: Dragos Tatulea <dtatulea@xxxxxxxxxx>
---
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