summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjhartmann <jhartmann>2000-02-09 23:19:21 +0000
committerjhartmann <jhartmann>2000-02-09 23:19:21 +0000
commitbf369b0de8444bb9eb04d893757a9ff99147a08f (patch)
tree24d09a79ab618096e8b7d8dd1a7f4f0980e911d4
parenta25cfdb2d4deb9d5992eefa5b059614d42610f3b (diff)
Quiescent routine added to DRI
-rw-r--r--xc/programs/Xserver/GL/dri/dri.c9
-rw-r--r--xc/programs/Xserver/GL/dri/dri.h2
2 files changed, 11 insertions, 0 deletions
diff --git a/xc/programs/Xserver/GL/dri/dri.c b/xc/programs/Xserver/GL/dri/dri.c
index 2b11c48f1..b1d5029fd 100644
--- a/xc/programs/Xserver/GL/dri/dri.c
+++ b/xc/programs/Xserver/GL/dri/dri.c
@@ -1560,6 +1560,15 @@ DRIUnlock(ScreenPtr pScreen) {
DRM_UNLOCK(pDRIPriv->drmFD, pDRIPriv->pSAREA, pDRIPriv->myContext);
}
+void
+DRIUnlockLockQueiscent(ScreenPtr pScreen) {
+ DRIScreenPrivPtr pDRIPriv = DRI_SCREEN_PRIV(pScreen);
+
+ DRM_UNLOCK(pDRIPriv->drmFD, pDRIPriv->pSAREA, pDRIPriv->myContext);
+ DRM_LOCK(pDRIPriv->drmFD, pDRIPriv->pSAREA, pDRIPriv->myContext,
+ DRM_LOCK_QUIESCENT|DRM_LOCK_FLUSH_ALL);
+}
+
void *DRIGetSAREAPrivate(ScreenPtr pScreen)
{
DRIScreenPrivPtr pDRIPriv = DRI_SCREEN_PRIV(pScreen);
diff --git a/xc/programs/Xserver/GL/dri/dri.h b/xc/programs/Xserver/GL/dri/dri.h
index 9250ebb79..729f4e3a7 100644
--- a/xc/programs/Xserver/GL/dri/dri.h
+++ b/xc/programs/Xserver/GL/dri/dri.h
@@ -229,6 +229,8 @@ CARD32 DRIGetDrawableIndex(
WindowPtr pWin);
void DRILock(ScreenPtr pScreen);
void DRIUnlock(ScreenPtr pScreen);
+void DRIUnlockLockQueiscent(ScreenPtr pScreen);
+
void *DRIGetSAREAPrivate(ScreenPtr pScreen);
DRIContextPrivPtr
DRICreateContextPriv(ScreenPtr pScreen,