[Mesa-dev] [PATCH 41/43] i965: Round copy size to the nearest block in intel_miptree_copy

Jason Ekstrand jason at jlekstrand.net
Tue May 16 22:45:35 UTC 2017


The width and height of the copy don't have to be aligned to the block
size if they specify the right or bottom edges of the image.  (See also
the comment and asserts right above).  We need to round them up when we
do the division in order to get it 100% right.

Cc: "17.0 17.1" <mesa-stable at lists.freedesktop.org>
---
 src/mesa/drivers/dri/i965/intel_blit.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/intel_blit.c b/src/mesa/drivers/dri/i965/intel_blit.c
index 568ed54..2925fc2 100644
--- a/src/mesa/drivers/dri/i965/intel_blit.c
+++ b/src/mesa/drivers/dri/i965/intel_blit.c
@@ -411,8 +411,8 @@ intel_miptree_copy(struct brw_context *brw,
 
       src_x /= (int)bw;
       src_y /= (int)bh;
-      src_width /= (int)bw;
-      src_height /= (int)bh;
+      src_width = DIV_ROUND_UP(src_width, (int)bw);
+      src_height = DIV_ROUND_UP(src_height, (int)bh);
    }
    src_x += src_image_x;
    src_y += src_image_y;
-- 
2.5.0.400.gff86faf



More information about the mesa-dev mailing list