summaryrefslogtreecommitdiff
path: root/exa
diff options
context:
space:
mode:
authorMaarten Maathuis <madman2003@gmail.com>2011-02-20 11:59:41 +0100
committerKeith Packard <keithp@keithp.com>2011-02-20 08:44:38 -0800
commitb4ef34d4664e0eaac7211f7a22a2025958aa1527 (patch)
tree9ed7d0f4435c09aa91902791bb9cfd448fb1377d /exa
parent443d75446bcbe7d97a23860a1e2d46c0b7e7cb26 (diff)
Revert "exa/mixed: Exclude frontbuffer from deferred pixmap handling."
This reverts commit 541b25038a5de74411a094570b407c5ae018c2ba. - It turns out that the high latency was a driver problem. - catting a large amount of text turns out to look prettier when the throughput is lower, but it's not worth the loss for a minor improvement that may not even exist on someone else's computer. Reviewed-by: Michel Dänzer <michel@daenzer.net> Signed-off-by: Maarten Maathuis <madman2003@gmail.com> Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'exa')
-rw-r--r--exa/exa_migration_mixed.c17
1 files changed, 4 insertions, 13 deletions
diff --git a/exa/exa_migration_mixed.c b/exa/exa_migration_mixed.c
index 4f49905d3..fb4715135 100644
--- a/exa/exa_migration_mixed.c
+++ b/exa/exa_migration_mixed.c
@@ -138,7 +138,6 @@ void
exaDamageReport_mixed(DamagePtr pDamage, RegionPtr pRegion, void *closure)
{
PixmapPtr pPixmap = closure;
- ScreenPtr pScreen = pPixmap->drawable.pScreen;
ExaPixmapPriv(pPixmap);
/* Move back results of software rendering on system memory copy of mixed driver
@@ -150,18 +149,10 @@ exaDamageReport_mixed(DamagePtr pDamage, RegionPtr pRegion, void *closure)
if (!pExaPixmap->use_gpu_copy && exaPixmapHasGpuCopy(pPixmap)) {
ExaScreenPriv(pPixmap->drawable.pScreen);
- /* Front buffer: Don't wait for the block handler to copy back the data.
- * This avoids annoying latency if you encounter a lot of software rendering.
- */
- if (pPixmap == pScreen->GetScreenPixmap(pScreen))
- exaMoveInPixmap_mixed(pPixmap);
- else {
- if (pExaScr->deferred_mixed_pixmap &&
- pExaScr->deferred_mixed_pixmap != pPixmap)
- exaMoveInPixmap_mixed(pExaScr->deferred_mixed_pixmap);
-
- pExaScr->deferred_mixed_pixmap = pPixmap;
- }
+ if (pExaScr->deferred_mixed_pixmap &&
+ pExaScr->deferred_mixed_pixmap != pPixmap)
+ exaMoveInPixmap_mixed(pExaScr->deferred_mixed_pixmap);
+ pExaScr->deferred_mixed_pixmap = pPixmap;
}
}