From fbd37e61687dc7c87021c79d533818d84ee23dba Mon Sep 17 00:00:00 2001 From: Lucas Stach Date: Wed, 31 May 2023 00:15:37 +0200 Subject: [PATCH] etnaviv: update derived state after forced commandstream flush If we run out of space in the commandstream while emitting the current state the drived states won't be recomputed for the now fully dirty context as the state derivation is called before any state emitted. Fix this by explicitly updating the derived state after a forced flush. Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8916 CC: mesa-stable Signed-off-by: Lucas Stach Reviewed-by: Christian Gmeiner Part-of: --- src/gallium/drivers/etnaviv/etnaviv_context.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/drivers/etnaviv/etnaviv_context.c b/src/gallium/drivers/etnaviv/etnaviv_context.c index eb00d973449..435b39e5cf0 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_context.c +++ b/src/gallium/drivers/etnaviv/etnaviv_context.c @@ -547,6 +547,8 @@ etna_context_force_flush(struct etna_cmd_stream *stream, void *priv) pctx->flush(pctx, NULL, 0); + /* update derived states as the context is now fully dirty */ + etna_state_update(etna_context(pctx)); } void