<div dir="ltr">Reviewed-by: Jason Ekstrand <<a href="mailto:jason@jlekstrand.net">jason@jlekstrand.net</a>><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Aug 16, 2017 at 12:30 PM, Kenneth Graunke <span dir="ltr"><<a href="mailto:kenneth@whitecape.org" target="_blank">kenneth@whitecape.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">EGLimages are shared with external users, and we don't know what they're<br>
going to do with them.  They might scan them out.  They might access<br>
them in a way that doesn't work with our explicit clflushing.<br>
<br>
It's safest to simply mark them non-coherent.<br>
<br>
Chris Wilson caught this problem and wrote a similar (though less<br>
aggressive) patch to solve it; the miptree code has since undergone<br>
a lot of refactoring so I had to rewrite it.<br>
<br>
Cc: Chris Wilson <<a href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a>><br>
Cc: Jason Ekstrand <<a href="mailto:jason@jlekstrand.net">jason@jlekstrand.net</a>><br>
---<br>
 src/mesa/drivers/dri/i965/<wbr>intel_mipmap_tree.c | 8 +++-----<br>
 1 file changed, 3 insertions(+), 5 deletions(-)<br>
<br>
diff --git a/src/mesa/drivers/dri/i965/<wbr>intel_mipmap_tree.c b/src/mesa/drivers/dri/i965/<wbr>intel_mipmap_tree.c<br>
index 237ab182712..dab60c4b045 100644<br>
--- a/src/mesa/drivers/dri/i965/<wbr>intel_mipmap_tree.c<br>
+++ b/src/mesa/drivers/dri/i965/<wbr>intel_mipmap_tree.c<br>
@@ -1061,12 +1061,10 @@ intel_miptree_create_for_dri_<wbr>image(struct brw_context *brw,<br>
       }<br>
    }<br>
<br>
-   /* If this is a window-system image, then we can no longer assume it's<br>
-    * cache-coherent because it may suddenly get scanned out which destroys<br>
-    * coherency.<br>
+   /* Don't assume coherency for imported EGLimages.  We don't know what<br>
+    * external clients are going to do with it.  They may scan it out.<br>
     */<br>
-   if (is_winsys_image)<br>
-      image->bo->cache_coherent = false;<br>
+   image->bo->cache_coherent = false;<br>
<br>
    return mt;<br>
 }<br>
<span class="HOEnZb"><font color="#888888">--<br>
2.14.0<br>
<br>
</font></span></blockquote></div><br></div>