Mesa (master): i965: Add more stringent blitter assertions

Ben Widawsky bwidawsk at kemper.freedesktop.org
Sat Feb 7 16:09:11 UTC 2015


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

Author: Ben Widawsky <benjamin.widawsky at intel.com>
Date:   Tue Dec 23 13:59:16 2014 -0800

i965: Add more stringent blitter assertions

Blits to or from a y-tiled surface must always be a multiple of the tile size.
>From page 16 of the HSW PRM
(https://01.org/linuxgraphics/sites/default/files/documentation/intel-gfx-prm-osrc-hsw-memory-views.pdf#16)
"The pitch of a tiled enclosing region must be an integral number of tile
widths"

Signed-off-by: Ben Widawsky <ben at bwidawsk.net>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Jason Ekstrand <jason.ekstrand at intel.com>

---

 src/mesa/drivers/dri/i965/intel_blit.c |    3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/mesa/drivers/dri/i965/intel_blit.c b/src/mesa/drivers/dri/i965/intel_blit.c
index e919528..9500bd7 100644
--- a/src/mesa/drivers/dri/i965/intel_blit.c
+++ b/src/mesa/drivers/dri/i965/intel_blit.c
@@ -307,6 +307,9 @@ intelEmitCopyBlit(struct brw_context *brw,
    if ((dst_y_tiled || src_y_tiled) && brw->gen < 6)
       return false;
 
+   assert(!dst_y_tiled || (dst_pitch % 128) == 0);
+   assert(!src_y_tiled || (src_pitch % 128) == 0);
+
    /* do space check before going any further */
    do {
        aper_array[0] = brw->batch.bo;




More information about the mesa-commit mailing list