summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Whitwell <keith@tungstengraphics.com>2006-02-22 17:18:19 +0000
committerKeith Whitwell <keith@tungstengraphics.com>2006-02-22 17:18:19 +0000
commitf74e06bf11546b35a1ae6b4ccbf7025e844fa2d5 (patch)
tree1eda46f84c2bd17c0fa66ead53e1cf3800092dfb
parent9c02649d1821361225672d70090a0449d3c845b4 (diff)
restore swapbuffers throttling
-rw-r--r--src/mesa/drivers/dri/i915/intel_blit.c5
-rw-r--r--src/mesa/drivers/dri/i915/intel_context.h1
2 files changed, 5 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i915/intel_blit.c b/src/mesa/drivers/dri/i915/intel_blit.c
index 147713dc349..d915c8c77fd 100644
--- a/src/mesa/drivers/dri/i915/intel_blit.c
+++ b/src/mesa/drivers/dri/i915/intel_blit.c
@@ -61,6 +61,9 @@ void intelCopyBuffer( const __DRIdrawablePrivate *dPriv )
intel = (struct intel_context *) dPriv->driContextPriv->driverPrivate;
intelFlush( &intel->ctx );
+
+ bmFinishFence(intel->bm, intel->last_swap_fence);
+
/* The LOCK_HARDWARE is required for the cliprects. Buffer offsets
* should work regardless.
*/
@@ -117,7 +120,7 @@ void intelCopyBuffer( const __DRIdrawablePrivate *dPriv )
}
}
- intel_batchbuffer_flush( intel->batch );
+ intel->last_swap_fence = intel_batchbuffer_flush( intel->batch );
UNLOCK_HARDWARE( intel );
}
diff --git a/src/mesa/drivers/dri/i915/intel_context.h b/src/mesa/drivers/dri/i915/intel_context.h
index 8e6ec161802..1c8eca2d6ca 100644
--- a/src/mesa/drivers/dri/i915/intel_context.h
+++ b/src/mesa/drivers/dri/i915/intel_context.h
@@ -171,6 +171,7 @@ struct intel_context
GLuint NewGLState;
GLuint last_fence;
+ GLuint last_swap_fence;
struct intel_batchbuffer *batch;