if (!ctx->queries_disabled)
zink_suspend_queries(ctx, batch);
- tc_driver_internal_flush_notify(ctx->tc);
struct zink_screen *screen = zink_screen(ctx->base.screen);
+ if (!screen->driver_workarounds.track_renderpasses)
+ tc_driver_internal_flush_notify(ctx->tc);
struct zink_batch_state *bs;
/* oom flushing is triggered to handle stupid piglit tests like streaming-texture-leak */
check_device_lost(ctx);
}
}
- tc_driver_internal_flush_notify(ctx->tc);
+ if (!screen->driver_workarounds.track_renderpasses)
+ tc_driver_internal_flush_notify(ctx->tc);
} else {
fence = &batch->state->fence;
submit_count = batch->state->submit_count;
&(struct threaded_context_options){
.create_fence = zink_create_tc_fence_for_tc,
.is_resource_busy = zink_context_is_resource_busy,
- .driver_calls_flush_notify = true,
+ .driver_calls_flush_notify = !screen->driver_workarounds.track_renderpasses,
.unsynchronized_get_device_reset_status = true,
.parse_renderpass_info = screen->driver_workarounds.track_renderpasses,
.dsa_parse = zink_tc_parse_dsa,