Mesa (radeon-rewrite): radeon: fix readback problem for piglit tests

Dave Airlie airlied at kemper.freedesktop.org
Mon Mar 30 02:27:09 UTC 2009


Module: Mesa
Branch: radeon-rewrite
Commit: 3b09f6544aee880687cd82de33205ae2fa652e10
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3b09f6544aee880687cd82de33205ae2fa652e10

Author: Dave Airlie <airlied at redhat.com>
Date:   Mon Mar 30 12:02:08 2009 +1000

radeon: fix readback problem for piglit tests

---

 src/mesa/drivers/dri/radeon/radeon_span.c |   17 ++++++++++-------
 1 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/src/mesa/drivers/dri/radeon/radeon_span.c b/src/mesa/drivers/dri/radeon/radeon_span.c
index 0b4eaae..961bbab 100644
--- a/src/mesa/drivers/dri/radeon/radeon_span.c
+++ b/src/mesa/drivers/dri/radeon/radeon_span.c
@@ -441,13 +441,6 @@ static void radeonSpanRenderStart(GLcontext * ctx)
 
 	radeon_firevertices(rmesa);
 
-	for (i = 0; i < ctx->Const.MaxTextureImageUnits; i++) {
-		if (ctx->Texture.Unit[i]._ReallyEnabled)
-			ctx->Driver.MapTexture(ctx, ctx->Texture.Unit[i]._Current);
-	}
-
-	radeon_map_unmap_buffers(ctx, 1);
-
 	/* The locking and wait for idle should really only be needed in classic mode.
 	 * In a future memory manager based implementation, this should become
 	 * unnecessary due to the fact that mapping our buffers, textures, etc.
@@ -455,6 +448,16 @@ static void radeonSpanRenderStart(GLcontext * ctx)
 	 * be waited on. */
 	LOCK_HARDWARE(rmesa);
 	radeonWaitForIdleLocked(rmesa);
+
+	for (i = 0; i < ctx->Const.MaxTextureImageUnits; i++) {
+		if (ctx->Texture.Unit[i]._ReallyEnabled)
+			ctx->Driver.MapTexture(ctx, ctx->Texture.Unit[i]._Current);
+	}
+
+	radeon_map_unmap_buffers(ctx, 1);
+
+
+
 }
 
 static void radeonSpanRenderFinish(GLcontext * ctx)




More information about the mesa-commit mailing list