zink: flag push state changed in batch changed conditional
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Mon, 24 Oct 2022 20:58:18 +0000 (16:58 -0400)
committerMarge Bot <emma+marge@anholt.net>
Tue, 25 Oct 2022 22:40:43 +0000 (22:40 +0000)
this will matter after future refactoring

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19306>

src/gallium/drivers/zink/zink_descriptors.c

index 59df307..48bc672 100644 (file)
@@ -912,7 +912,7 @@ zink_descriptors_update(struct zink_context *ctx, bool is_compute)
    if (batch_changed) {
       /* update all sets and bind null sets */
       ctx->dd.state_changed[is_compute] = pg->dd.binding_usage & BITFIELD_MASK(ZINK_DESCRIPTOR_TYPE_UNIFORMS);
-      ctx->dd.push_state_changed[is_compute] = !!pg->dd.push_usage;
+      ctx->dd.push_state_changed[is_compute] = !!pg->dd.push_usage || ctx->dd.has_fbfetch != bs->dd.has_fbfetch;
    }
 
    if (pg != bs->dd.pg[is_compute]) {