summaryrefslogtreecommitdiff
path: root/src/nv_driver.c
diff options
context:
space:
mode:
authorMaarten Maathuis <madman2003@gmail.com>2011-02-10 20:12:07 +0100
committerBen Skeggs <bskeggs@redhat.com>2011-02-11 09:52:04 +1000
commit54764980411b4b8124c36edb8730612b04f292a9 (patch)
tree12fd4785525b6b4464f16e0a56150d84461212d3 /src/nv_driver.c
parent02c50db307a4e4eeb87f7db5d401bc53cce3b21f (diff)
Also flush from the BlockHandler.
- The fact that commit 02c50db307a4e4eeb87f7db5d401bc53cce3b21f fixed missing text for some people proves this is needed. That commit should have only improved latency a bit. - The FlushCallback is still needed for DRI2 texture_from_pixmap. - See bugs.fd.o #33977 for discussion. Signed-off-by: Maarten Maathuis <madman2003@gmail.com> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'src/nv_driver.c')
-rw-r--r--src/nv_driver.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/nv_driver.c b/src/nv_driver.c
index 3e009fc..523cab8 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -384,15 +384,18 @@ NVBlockHandler (
)
{
ScreenPtr pScreen = screenInfo.screens[i];
- ScrnInfoPtr pScrnInfo = xf86Screens[i];
- NVPtr pNv = NVPTR(pScrnInfo);
+ ScrnInfoPtr pScrn = xf86Screens[i];
+ NVPtr pNv = NVPTR(pScrn);
pScreen->BlockHandler = pNv->BlockHandler;
(*pScreen->BlockHandler) (i, blockData, pTimeout, pReadmask);
pScreen->BlockHandler = NVBlockHandler;
+ if (pScrn->vtSema && !pNv->NoAccel)
+ FIRE_RING (pNv->chan);
+
if (pNv->VideoTimerCallback)
- (*pNv->VideoTimerCallback)(pScrnInfo, currentTime.milliseconds);
+ (*pNv->VideoTimerCallback)(pScrn, currentTime.milliseconds);
}
static Bool