Commit 246ca4b001 ("nv50: implement multiple viewports/scissors, enable ARB_viewport_array") added dirty tracking to scissors/viewports. However it neglected to mark them all as dirty on a context switch. This fixes an apparent regression in webgl in chrome, but probably in any application that switches contexts.
Signed-off-by: Ilia Mirkin <imir...@alum.mit.edu> --- I'm probably going to push this out very shortly, as it is unlikely to be reviewed quickly and this is an annoying regression, but sending out to list so that I can make any necessary follow-up fixes, should review comments arrive. src/gallium/drivers/nouveau/nv50/nv50_state_validate.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/drivers/nouveau/nv50/nv50_state_validate.c b/src/gallium/drivers/nouveau/nv50/nv50_state_validate.c index dfce193..f953422 100644 --- a/src/gallium/drivers/nouveau/nv50/nv50_state_validate.c +++ b/src/gallium/drivers/nouveau/nv50/nv50_state_validate.c @@ -366,6 +366,8 @@ nv50_switch_pipe_context(struct nv50_context *ctx_to) ctx_to->state = ctx_from->state; ctx_to->dirty = ~0; + ctx_to->viewports_dirty = ~0; + ctx_to->scissors_dirty = ~0; if (!ctx_to->vertex) ctx_to->dirty &= ~(NV50_NEW_VERTEX | NV50_NEW_ARRAYS); -- 1.8.3.2 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev