vhost-user-gpu: fix resource leak in 'vg_resource_create_2d' (CVE-2021-3544) Call 'vugbm_buffer_destroy' in error path to avoid resource leak. Fixes: CVE-2021-3544 Reported-by: default avatarLi Qiang Reviewed-by: default avatarPrasad J Pandit Signed-off-by: default avatarLi Qiang Reviewed-by: Marc-André Lureau's avatarMarc-André Lureau Message-Id: <20210516030403.107723-3-liq3ea@163.com> Signed-off-by: Gerd Hoffmann's avatarGerd Hoffmann Upstream-Status: Backport [vhost-user-gpu does not exist in 4.2.0] CVE: CVE-2021-3544 Signed-off-by: Armin Kuster Index: qemu-4.2.0/contrib/vhost-user-gpu/main.c =================================================================== --- qemu-4.2.0.orig/contrib/vhost-user-gpu/main.c +++ qemu-4.2.0/contrib/vhost-user-gpu/main.c @@ -328,6 +328,7 @@ vg_resource_create_2d(VuGpu *g, g_critical("%s: resource creation failed %d %d %d", __func__, c2d.resource_id, c2d.width, c2d.height); g_free(res); + vugbm_buffer_destroy(&res->buffer); cmd->error = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY; return; }