[Nouveau] [PATCH] nouveau/dri2: don't try to page flip pixmaps

Marcin Slusarz marcin.slusarz at gmail.com
Thu May 3 05:50:16 PDT 2012


Port of commit ae45d7e6d8e6844cd4586c9ee97c21b257fa788f in xf86-video-ati.

Fixes https://bugs.freedesktop.org/show_bug.cgi?id=49351

(Additionally, don't try to pageflip if user disabled it in xorg.conf.
Currently this change is a no-op, because can_exchange returns true only when
page flipping is enabled, but commit 169512fbe91f0671a90dfee5e280357f0a4ef701 -
which changed can_exchange behavior - is due to be reverted)
---
 src/nouveau_dri2.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/src/nouveau_dri2.c b/src/nouveau_dri2.c
index 588735f..3d8d22f 100644
--- a/src/nouveau_dri2.c
+++ b/src/nouveau_dri2.c
@@ -328,7 +328,8 @@ nouveau_dri2_finish_swap(DrawablePtr draw, unsigned int frame,
 		type = DRI2_EXCHANGE_COMPLETE;
 		DamageRegionAppend(draw, &reg);
 
-		if (DRI2CanFlip(draw)) {
+		if (DRI2CanFlip(draw) && pNv->has_pageflip &&
+				draw->type == DRAWABLE_WINDOW) {
 			type = DRI2_FLIP_COMPLETE;
 			ret = drmmode_page_flip(draw, src_pix,
 						violate_oml(draw) ? NULL : s,
-- 
1.7.8.5



More information about the Nouveau mailing list