summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/qxl/qxl_draw.c
diff options
context:
space:
mode:
authorVasily Averin <vvs@virtuozzo.com>2020-04-27 07:32:46 +0200
committerGerd Hoffmann <kraxel@redhat.com>2020-04-28 12:03:41 +0200
commit85e9b88af1e6164f19ec71381efd5e2bcfc17620 (patch)
tree4fc6e89d7fad276bb42df36312dd4ba8e0b2f10d /drivers/gpu/drm/qxl/qxl_draw.c
parentdrm/virtio: only destroy created contexts (diff)
downloadlinux-85e9b88af1e6164f19ec71381efd5e2bcfc17620.tar.xz
linux-85e9b88af1e6164f19ec71381efd5e2bcfc17620.zip
drm/qxl: qxl_release leak in qxl_draw_dirty_fb()
ret should be changed to release allocated struct qxl_release Cc: stable@vger.kernel.org Fixes: 8002db6336dd ("qxl: convert qxl driver to proper use for reservations") Signed-off-by: Vasily Averin <vvs@virtuozzo.com> Link: http://patchwork.freedesktop.org/patch/msgid/22cfd55f-07c8-95d0-a2f7-191b7153c3d4@virtuozzo.com Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/qxl/qxl_draw.c')
-rw-r--r--drivers/gpu/drm/qxl/qxl_draw.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/gpu/drm/qxl/qxl_draw.c b/drivers/gpu/drm/qxl/qxl_draw.c
index 5bebf1ea1c5d..f8776d60d08e 100644
--- a/drivers/gpu/drm/qxl/qxl_draw.c
+++ b/drivers/gpu/drm/qxl/qxl_draw.c
@@ -209,9 +209,10 @@ void qxl_draw_dirty_fb(struct qxl_device *qdev,
goto out_release_backoff;
rects = drawable_set_clipping(qdev, num_clips, clips_bo);
- if (!rects)
+ if (!rects) {
+ ret = -EINVAL;
goto out_release_backoff;
-
+ }
drawable = (struct qxl_drawable *)qxl_release_map(qdev, release);
drawable->clip.type = SPICE_CLIP_TYPE_RECTS;