<div dir="ltr"><div>I just pushed this patch:<br><br><a href="https://patchwork.freedesktop.org/patch/158551/">https://patchwork.freedesktop.org/patch/158551/</a><br><br></div>Which is the "correct" fix.  I'll send out an ISL patch shortly that adds a bunch more asserts and should make this sort of thing easier to catch in the future.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Jun 5, 2017 at 2:55 AM, Eero Tamminen <span dir="ltr"><<a href="mailto:eero.t.tamminen@intel.com" target="_blank">eero.t.tamminen@intel.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<span class=""><br>
<br>
On 04.06.2017 22:26, Kenneth Graunke wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Since commit e9f5004d5ea38a21019e0affcd63d3<wbr>53b98d499a, KDE's Plasma<br>
Shell started crashing when intel_disable_rb_aux_buffer tried to<br>
dereference irb->mt, and there was no miptree.  This happened during<br>
intel_texture_view_requires_re<wbr>solve, coming from a glClear().<br>
</blockquote>
<br></span>
That's not the only thing dying because of ISL_FORMAT_UNSUPPORTED.<br>
<br>
Most of the benchmarks are currently crashing on GEN9.<br>
<br>
GpuTest 0.7, GLBenchmark 2.7, Lightsmark2008, Unigine Heaven & Valley, SynMark and several GfxBench v4 test-cases (T-Rex, driver, driver2, blending, fill) crash because of ISL_FORMAT_UNSUPPORTED:<br>
-------------<br>
Program received signal SIGSEGV, Segmentation fault.<br>
0x00007ffff24c35a1 in isl_format_supports_ccs_e (devinfo=0x7ce998, format=ISL_FORMAT_UNSUPPORTED)<br>
    at ../../../src/intel/isl/isl_for<wbr>mat.c:536<br>
536        if (!format_info[format].exists)<br>
-------------<br>
<br>
If latest Mesa is installed to the system instead of one running just the test-case it with, one gets for some of those BadWindow errors instead, and Ubuntu compiz also crashes.<span class="HOEnZb"><font color="#888888"><br>
<br>
<br>
        - Eero</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Apparently intel_tex->_Format is MESA_FORMAT_NONE.  We used to translate<br>
MESA_FORMAT_NONE to 0, which happens to be ISL_FORMAT_R32G32B32A32_FLOAT,<br>
which happens to support CCS_E, so we assumed no resolves were needed.<br>
<br>
That patch began translating MESA_FORMAT_NONE as ISL_FORMAT_UNSUPPORTED,<br>
which claims not to support CCS_E, so we thought we needed resolves,<br>
even though the buffer was in a bad state.<br>
<br>
For now, detect intel_tex->_Format == MESA_FORMAT_NONE and bail, like<br>
we used to.  This is an ugly band-aid fix, but that's okay, given that<br>
Jason has patches on the mailing list to rewrite the resolve code.<br>
<br>
This makes KDE usable again.<br>
---<br>
 src/mesa/drivers/dri/i965/<wbr>brw_context.c | 3 +++<br>
 1 file changed, 3 insertions(+)<br>
<br>
diff --git a/src/mesa/drivers/dri/i965/br<wbr>w_context.c b/src/mesa/drivers/dri/i965/br<wbr>w_context.c<br>
index 9878cae9d4b..d8219cb57e0 100644<br>
--- a/src/mesa/drivers/dri/i965/br<wbr>w_context.c<br>
+++ b/src/mesa/drivers/dri/i965/br<wbr>w_context.c<br>
@@ -205,6 +205,9 @@ intel_texture_view_requires_re<wbr>solve(struct brw_context *brw,<br>
        !intel_miptree_is_lossless_com<wbr>pressed(brw, intel_tex->mt))<br>
      return false;<br>
<br>
+   if (intel_tex->_Format == MESA_FORMAT_NONE)<br>
+      return false;<br>
+<br>
    const enum isl_format isl_format =<br>
       brw_isl_format_for_mesa_forma<wbr>t(intel_tex->_Format);<br>
<br>
<br>
</blockquote>
<br></div></div><div class="HOEnZb"><div class="h5">
______________________________<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>
</div></div></blockquote></div><br></div>