Ilia Mirkin
2014-Feb-13 07:33 UTC
[Nouveau] [PATCH] nv50: mark scissors/viewports dirty on context switch
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 <imirkin at 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
Possibly Parallel Threads
- [PATCH try 2 2/2] gallium/nouveau: move pushbuf and fences to context
- [Mesa-dev] [PATCH try 2 2/2] gallium/nouveau: move pushbuf and fences to context
- [PATCH] nv50: avoid using inline vertex data submit when gl_VertexID is used
- [PATCH] nv50: make sure to clear _all_ layers of all attachments
- [PATCH 00/12] Cherry-pick nv50/nvc0 patches from gallium-nine
