Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1157334

[PATCH 02/11] drm/qxl: Do not leak memory if qxl_release_list_add fails

From Frediano Ziglio <fziglio@redhat.com>
Newsgroups linux.kernel
Subject [PATCH 02/11] drm/qxl: Do not leak memory if qxl_release_list_add fails
Date 2015-06-03 13:30 +0200
Message-ID <pxf1U-7Sy-13@gated-at.bofh.it> (permalink)
References <pxeIy-7uH-29@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


If the function fails reference counter to the object is not decremented
causing leaks.
This is hard to spot as it happens only on very low memory situations.

Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
---
 drivers/gpu/drm/qxl/qxl_ioctl.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/qxl/qxl_ioctl.c b/drivers/gpu/drm/qxl/qxl_ioctl.c
index afd7297..e8b5207 100644
--- a/drivers/gpu/drm/qxl/qxl_ioctl.c
+++ b/drivers/gpu/drm/qxl/qxl_ioctl.c
@@ -122,8 +122,10 @@ static struct qxl_bo *qxlhw_handle_to_bo(struct qxl_device *qdev,
 	qobj = gem_to_qxl_bo(gobj);
 
 	ret = qxl_release_list_add(release, qobj);
-	if (ret)
+	if (ret) {
+		drm_gem_object_unreference_unlocked(gobj);
 		return NULL;
+	}
 
 	return qobj;
 }
-- 
2.1.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

[PATCH 02/11] drm/qxl: Do not leak memory if qxl_release_list_add fails Frediano Ziglio <fziglio@redhat.com> - 2015-06-03 13:30 +0200

csiph-web