iris: Re-pin even if nothing is dirty
authorKenneth Graunke <kenneth@whitecape.org>
Wed, 21 Nov 2018 19:54:37 +0000 (11:54 -0800)
committerKenneth Graunke <kenneth@whitecape.org>
Thu, 21 Feb 2019 18:26:10 +0000 (10:26 -0800)
src/gallium/drivers/iris/iris_state.c

index 36b9fdb9ab7520a37b6f3c07ffae0f100da8db13..5ead5650f91f21b7103dda47e10a3a7b11c2b9d7 100644 (file)
@@ -4442,6 +4442,11 @@ iris_upload_render_state(struct iris_context *ice,
     */
    iris_use_pinned_bo(batch, ice->state.binder.bo, false);
 
+   if (!batch->contains_draw) {
+      iris_restore_render_saved_bos(ice, batch, draw);
+      batch->contains_draw = true;
+   }
+
    iris_upload_dirty_render_state(ice, batch, draw);
 
    if (draw->index_size > 0) {
@@ -4543,11 +4548,6 @@ iris_upload_render_state(struct iris_context *ice,
 
       //prim.BaseVertexLocation = ...;
    }
-
-   if (!batch->contains_draw) {
-      iris_restore_render_saved_bos(ice, batch, draw);
-      batch->contains_draw = true;
-   }
 }
 
 static void