summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/radeon/radeon_common.c
diff options
context:
space:
mode:
authorMichel Dänzer <daenzer@vmware.com>2009-03-16 12:51:50 +0100
committerMichel Dänzer <daenzer@vmware.com>2009-03-16 12:51:50 +0100
commitaa85973f95b8ccce1964c9bbbfb1e411c4b31cbd (patch)
tree0ba4719d2b3687d9fe3ee8c2a2210f77325338b8 /src/mesa/drivers/dri/radeon/radeon_common.c
parent9c591c52c7a9a75fc1f5822ed2f5e7e82ab396a5 (diff)
Fixup previous commit.
radeonScheduleSwap() already takes the lock in the SwapBuffers case, only the CopySubBuffer case was missing it.
Diffstat (limited to 'src/mesa/drivers/dri/radeon/radeon_common.c')
-rw-r--r--src/mesa/drivers/dri/radeon/radeon_common.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/radeon/radeon_common.c b/src/mesa/drivers/dri/radeon/radeon_common.c
index 5ee8627bba..1a5d0467d4 100644
--- a/src/mesa/drivers/dri/radeon/radeon_common.c
+++ b/src/mesa/drivers/dri/radeon/radeon_common.c
@@ -420,7 +420,6 @@ void radeonCopyBuffer( __DRIdrawablePrivate *dPriv,
fprintf( stderr, "\n%s( %p )\n\n", __FUNCTION__, (void *) rmesa->glCtx );
}
- LOCK_HARDWARE( rmesa );
nbox = dPriv->numClipRects; /* must be in locked region */
for ( i = 0 ; i < nbox ; ) {
@@ -510,8 +509,6 @@ static GLboolean radeonPageFlip( __DRIdrawablePrivate *dPriv )
psp = dPriv->driScreenPriv;
- LOCK_HARDWARE( radeon );
-
if ( RADEON_DEBUG & DEBUG_IOCTL ) {
fprintf(stderr, "%s: pfCurrentPage: %d %d\n", __FUNCTION__,
radeon->sarea->pfCurrentPage, radeon->sarea->pfState);
@@ -605,6 +602,8 @@ void radeonCopySubBuffer(__DRIdrawablePrivate * dPriv,
rect.x2 = rect.x1 + w;
rect.y2 = rect.y1 + h;
_mesa_notifySwapBuffers(ctx); /* flush pending rendering comands */
+ LOCK_HARDWARE( (radeonContextPtr)
+ dPriv->driContextPriv->driverPrivate );
radeonCopyBuffer(dPriv, &rect);
}
} else {