[igt-dev] [PATCH i-g-t v2 1/5] lib/igt_fb: Unref the renderecopy scratch bos

Ville Syrjala ville.syrjala at linux.intel.com
Thu Apr 18 12:09:57 UTC 2019


From: Ville Syrjälä <ville.syrjala at linux.intel.com>

We're currently leaking all the temporary bos we construct
for rendercopy. That doesn't go so well when trying to test
with 1GiB framebuffers.

v2: Add fini_buf() (Chris)

Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
---
 lib/igt_fb.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/lib/igt_fb.c b/lib/igt_fb.c
index 6a43fcc4735f..766e504d5fce 100644
--- a/lib/igt_fb.c
+++ b/lib/igt_fb.c
@@ -1628,6 +1628,11 @@ static void init_buf(struct fb_blit_upload *blit,
 	}
 }
 
+static void fini_buf(struct igt_buf *buf)
+{
+	drm_intel_bo_unreference(buf->bo);
+}
+
 static void rendercopy(struct fb_blit_upload *blit,
 		       const struct igt_fb *dst_fb,
 		       const struct igt_fb *src_fb)
@@ -1647,6 +1652,9 @@ static void rendercopy(struct fb_blit_upload *blit,
 	render_copy(blit->batch, NULL,
 		    &src, 0, 0, dst_fb->plane_width[0], dst_fb->plane_height[0],
 		    &dst, 0, 0);
+
+	fini_buf(&dst);
+	fini_buf(&src);
 }
 
 static void blitcopy(const struct igt_fb *dst_fb,
-- 
2.21.0



More information about the igt-dev mailing list