From d4d81ed02e79ef39ab0e06ebc18e1f5b79e2c92d Mon Sep 17 00:00:00 2001 From: Francisco Jerez Date: Wed, 15 Sep 2010 16:44:06 +0200 Subject: dri/nouveau: Don't reemit the BO state in nouveau_state_emit(). --- src/mesa/drivers/dri/nouveau/nouveau_state.c | 2 -- src/mesa/drivers/dri/nouveau/nv04_context.c | 6 +++--- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/mesa/drivers/dri/nouveau/nouveau_state.c b/src/mesa/drivers/dri/nouveau/nouveau_state.c index 691e51e738..01bcbc4b3c 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_state.c +++ b/src/mesa/drivers/dri/nouveau/nouveau_state.c @@ -459,8 +459,6 @@ nouveau_state_emit(GLcontext *ctx) } BITSET_ZERO(nctx->dirty); - - nouveau_bo_state_emit(ctx); } static void diff --git a/src/mesa/drivers/dri/nouveau/nv04_context.c b/src/mesa/drivers/dri/nouveau/nv04_context.c index 78703b0efa..94422f559d 100644 --- a/src/mesa/drivers/dri/nouveau/nv04_context.c +++ b/src/mesa/drivers/dri/nouveau/nv04_context.c @@ -93,15 +93,15 @@ nv04_channel_flush_notify(struct nouveau_channel *chan) GLcontext *ctx = &nctx->base; if (nctx->fallback < SWRAST) { - /* Flushing seems to clobber the engine context. */ + nouveau_bo_state_emit(ctx); + + /* Reemit the engine state. */ context_emit(ctx, TEX_OBJ0); context_emit(ctx, TEX_OBJ1); context_emit(ctx, TEX_ENV0); context_emit(ctx, TEX_ENV1); context_emit(ctx, CONTROL); context_emit(ctx, BLEND); - - nouveau_bo_state_emit(ctx); } } -- cgit v1.2.3