diff options
author | Vasily Averin <vvs@virtuozzo.com> | 2020-04-27 08:32:51 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2020-05-05 19:14:29 +0200 |
commit | 9148b1aa18f8c2d01e8ce3cef589a58654fd8d43 (patch) | |
tree | f5243da8d9dcbf65059deeadd2e4a9c6de5815ea | |
parent | c1dcdab561e5d0ffb4f38566cff3055b0fea2a4e (diff) | |
download | linux-stable-9148b1aa18f8c2d01e8ce3cef589a58654fd8d43.tar.gz linux-stable-9148b1aa18f8c2d01e8ce3cef589a58654fd8d43.tar.bz2 linux-stable-9148b1aa18f8c2d01e8ce3cef589a58654fd8d43.zip |
drm/qxl: qxl_release leak in qxl_hw_surface_alloc()
commit a65aa9c3676ffccb21361d52fcfedd5b5ff387d7 upstream.
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/2e5a13ae-9ab2-5401-aa4d-03d5f5593423@virtuozzo.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/gpu/drm/qxl/qxl_cmd.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/gpu/drm/qxl/qxl_cmd.c b/drivers/gpu/drm/qxl/qxl_cmd.c index 04270f5d110c..4df9c5a8ec63 100644 --- a/drivers/gpu/drm/qxl/qxl_cmd.c +++ b/drivers/gpu/drm/qxl/qxl_cmd.c @@ -500,9 +500,10 @@ int qxl_hw_surface_alloc(struct qxl_device *qdev, return ret; ret = qxl_release_reserve_list(release, true); - if (ret) + if (ret) { + qxl_release_free(qdev, release); return ret; - + } cmd = (struct qxl_surface_cmd *)qxl_release_map(qdev, release); cmd->type = QXL_SURFACE_CMD_CREATE; cmd->flags = QXL_SURF_FLAG_KEEP_DATA; |