iris: Flag IRIS_DIRTY_BINDINGS_XS on constant buffer rebinds
authorKenneth Graunke <kenneth@whitecape.org>
Tue, 10 Sep 2019 19:10:26 +0000 (12:10 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Wed, 18 Sep 2019 22:44:22 +0000 (15:44 -0700)
We upload a new SURFACE_STATE for the UBO/SSBO in question, which
means that we need new binding tables as well.

Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
src/gallium/drivers/iris/iris_state.c

index d45b1736af308dcb87d7e805a998e8a1733b233b..ed669f7ecb91c7e70bd16f191eb570dfe2070437 100644 (file)
@@ -6051,7 +6051,8 @@ iris_rebind_buffer(struct iris_context *ice,
 
             if (res->bo == iris_resource_bo(cbuf->buffer)) {
                iris_upload_ubo_ssbo_surf_state(ice, cbuf, surf_state, false);
-               ice->state.dirty |= IRIS_DIRTY_CONSTANTS_VS << s;
+               ice->state.dirty |=
+                  (IRIS_DIRTY_CONSTANTS_VS | IRIS_DIRTY_BINDINGS_VS) << s;
             }
          }
       }