Mesa (master): i965: Fix intel_bufferobj_buffer range for blit drawpixels.

Eric Anholt anholt at kemper.freedesktop.org
Thu May 1 22:16:53 UTC 2014


Module: Mesa
Branch: master
Commit: b49982de6a52fdb7d0360d608badb103d15c04f1
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b49982de6a52fdb7d0360d608badb103d15c04f1

Author: Eric Anholt <eric at anholt.net>
Date:   Fri Apr 25 15:14:47 2014 -0700

i965: Fix intel_bufferobj_buffer range for blit drawpixels.

If the stride wasn't width*cpp, we wouldn't track how much of the src is
busy, and allow a subdata into the end to proceed unsynchronized.

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Chad Versace <chad.versace at linux.intel.com>

---

 src/mesa/drivers/dri/i965/intel_pixel_draw.c |    5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/intel_pixel_draw.c b/src/mesa/drivers/dri/i965/intel_pixel_draw.c
index 96bbd3d..b46bf26 100644
--- a/src/mesa/drivers/dri/i965/intel_pixel_draw.c
+++ b/src/mesa/drivers/dri/i965/intel_pixel_draw.c
@@ -103,9 +103,8 @@ do_blit_drawpixels(struct gl_context * ctx,
    src_offset += _mesa_image_offset(2, unpack, width, height,
 				    format, type, 0, 0, 0);
 
-   src_buffer = intel_bufferobj_buffer(brw, src,
-				       src_offset, width * height *
-                                       irb->mt->cpp);
+   src_buffer = intel_bufferobj_buffer(brw, src, src_offset,
+                                       height * src_stride);
 
    struct intel_mipmap_tree *pbo_mt =
       intel_miptree_create_for_bo(brw,




More information about the mesa-commit mailing list