<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Apr 17, 2018 at 4:19 PM, Anuj Phogat <span dir="ltr"><<a href="mailto:anuj.phogat@gmail.com" target="_blank">anuj.phogat@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-family:verdana,sans-serif;font-size:small">For the series:</div><div><font face="verdana, sans-serif">Reviewed-by: Anuj Phogat <<a href="mailto:anuj.phogat@gmail.com" target="_blank">anuj.phogat@gmail.com</a>></font><br></div><div><font face="verdana, sans-serif"><br></font></div><div><font face="verdana, sans-serif">This might explain piglit GPU hangs or failures. I'll do a piglit run with these patches.</font></div></div></blockquote><div><br></div><div>Yeah.  I know it was causing problems in simulation (which is where I found it).  Do you want me to wait for you to do piglit runs and get data before landing these?<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><font face="verdana, sans-serif">Thanks</font></div><div><font face="verdana, sans-serif">Anuj</font></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">On Tue, Apr 17, 2018 at 3:10 PM, Jason Ekstrand <span dir="ltr"><<a href="mailto:jason@jlekstrand.net" target="_blank">jason@jlekstrand.net</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div class="h5">---<br>
 src/mesa/drivers/dri/i965/gen<wbr>X_blorp_exec.c | 14 ++++++++++++++<br>
 1 file changed, 14 insertions(+)<br>
<br>
diff --git a/src/mesa/drivers/dri/i965/ge<wbr>nX_blorp_exec.c b/src/mesa/drivers/dri/i965/ge<wbr>nX_blorp_exec.c<br>
index 3406a6f..a6cb0e3 100644<br>
--- a/src/mesa/drivers/dri/i965/ge<wbr>nX_blorp_exec.c<br>
+++ b/src/mesa/drivers/dri/i965/ge<wbr>nX_blorp_exec.c<br>
@@ -241,6 +241,20 @@ genX(blorp_exec)(struct blorp_batch *batch,<br>
    struct gl_context *ctx = &brw->ctx;<br>
    bool check_aperture_failed_once = false;<br>
<br>
+#if GEN_GEN >= 11<br>
+   /* The PIPE_CONTROL command description says:<br>
+    *<br>
+    * "Whenever a Binding Table Index (BTI) used by a Render Taget Message<br>
+    *  points to a different RENDER_SURFACE_STATE, SW must issue a Render<br>
+    *  Target Cache Flush by enabling this bit. When render target flush<br>
+    *  is set due to new association of BTI, PS Scoreboard Stall bit must<br>
+    *  be set in this packet."<br>
+   */<br>
+   brw_emit_pipe_control_flush(b<wbr>rw,<br>
+                               PIPE_CONTROL_RENDER_TARGET_FL<wbr>USH |<br>
+                               PIPE_CONTROL_STALL_AT_SCOREBO<wbr>ARD);<br>
+#endif<br>
+<br>
    /* Flush the sampler and render caches.  We definitely need to flush the<br>
     * sampler cache so that we get updated contents from the render cache for<br>
     * the glBlitFramebuffer() source.  Also, we are sometimes warned in the<br>
</div></div><span class="HOEnZb"><font color="#888888"><span class="m_-8891486823720979788gmail-HOEnZb"><font color="#888888">-- <br>
2.5.0.400.gff86faf<br>
<br>
______________________________<wbr>_________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org" target="_blank">mesa-dev@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/mesa-dev</a><br>
</font></span></font></span></blockquote></div><br></div></div>
</blockquote></div><br></div></div>