From 452e8776788f02b9425bcbaf9533081479a5cc51 Mon Sep 17 00:00:00 2001 From: Ville Syrjälä Date: Wed, 3 Apr 2019 18:29:46 +0300 Subject: lib/rendercopy: Assert that buffer dimensions/stride are acceptable MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sprinkle some asserts into rendercopy to make sure we don't try to exceed the render engine surface size/stride limitations. Signed-off-by: Ville Syrjälä Reviewed-by: Chris Wilson --- lib/rendercopy_i830.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'lib/rendercopy_i830.c') diff --git a/lib/rendercopy_i830.c b/lib/rendercopy_i830.c index c19a6a38..e8c04718 100644 --- a/lib/rendercopy_i830.c +++ b/lib/rendercopy_i830.c @@ -138,6 +138,10 @@ static void gen2_emit_target(struct intel_batchbuffer *batch, uint32_t tiling; uint32_t format; + igt_assert_lte(dst->stride, 8192); + igt_assert_lte(igt_buf_width(dst), 2048); + igt_assert_lte(igt_buf_height(dst), 2048); + switch (dst->bpp) { case 8: format = COLR_BUF_8BIT; break; case 16: format = COLR_BUF_RGB565; break; @@ -175,6 +179,10 @@ static void gen2_emit_texture(struct intel_batchbuffer *batch, uint32_t tiling; uint32_t format; + igt_assert_lte(src->stride, 8192); + igt_assert_lte(igt_buf_width(src), 2048); + igt_assert_lte(igt_buf_height(src), 2048); + switch (src->bpp) { case 8: format = MAPSURF_8BIT | MT_8BIT_L8; break; case 16: format = MAPSURF_16BIT | MT_16BIT_RGB565; break; -- cgit v1.2.3