<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Apr 12, 2017 at 12:25 PM, Lionel Landwerlin <span dir="ltr"><<a href="mailto:lionel.g.landwerlin@intel.com" target="_blank">lionel.g.landwerlin@intel.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 31/03/17 16:17, Jason Ekstrand wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Cc: "13.0 17.0" <<a href="mailto:mesa-stable@lists.freedesktop.org" target="_blank">mesa-stable@lists.freedesktop<wbr>.org</a>><br>
---<br>
  src/intel/vulkan/anv_blorp.c | 5 +++++<br>
  1 file changed, 5 insertions(+)<br>
<br>
diff --git a/src/intel/vulkan/anv_blorp.c b/src/intel/vulkan/anv_blorp.c<br>
index 72a468a..f26f5e5 100644<br>
--- a/src/intel/vulkan/anv_blorp.c<br>
+++ b/src/intel/vulkan/anv_blorp.c<br>
@@ -690,6 +690,11 @@ void anv_CmdUpdateBuffer(<br>
       assert(max_update_size < MAX_SURFACE_DIM * 4);<br>
  +   /* We're about to read data that was written from the CPU.  Flush the<br>
</blockquote></span>
Did you mean GPU?<span class=""><br></span></blockquote><div><br></div><div>No, I mean CPU.  We copy the data provided by the user into a chunk of the dynamic state pool and then use blorp to copy it to the buffer specified by the user.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
+    * texture cache so we don't get anything stale.<br>
+    */<br>
+   cmd_buffer->state.pending_pip<wbr>e_bits |= ANV_PIPE_TEXTURE_CACHE_INVALID<wbr>ATE_BIT;<br>
</blockquote>
<br></span>
Why just the texture cache? Should we add data cache + render target?<br></blockquote><div><br></div><div>Because we're not writing from the GPU and we're not using image load store.<br></div></div></div></div>