zink: disable tc flush notify with rp optimizing

this is extremely broken and nonfunctional since it randomly flushes
mid-renderpass and triggers invalidations

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21800>
This commit is contained in:
Mike Blumenkrantz 2023-03-15 16:38:30 -04:00 committed by Marge Bot
parent e3f0eaf5f9
commit 11b1ad9f3f
2 changed files with 5 additions and 3 deletions

View file

@ -613,9 +613,10 @@ zink_end_batch(struct zink_context *ctx, struct zink_batch *batch)
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 */

View file

@ -4145,7 +4145,8 @@ zink_flush(struct pipe_context *pctx,
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;
@ -5486,7 +5487,7 @@ zink_context_create(struct pipe_screen *pscreen, void *priv, unsigned flags)
&(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,