xf86-video-intel: 2 commits - src/sna/sna_video_textured.c test/Makefile.am test/tearing.mp4

Chris Wilson ickle at kemper.freedesktop.org
Mon May 27 13:16:05 PDT 2013


 src/sna/sna_video_textured.c |    4 ++--
 test/Makefile.am             |    2 +-
 test/tearing.mp4             |binary
 3 files changed, 3 insertions(+), 3 deletions(-)

New commits:
commit 7d64f596b895071ea253481c97275bf551c013e9
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Mon May 27 21:13:40 2013 +0100

    test: Add an easily visible tearing test for video playback
    
    Contributed by Matti Hamalainen.

diff --git a/test/Makefile.am b/test/Makefile.am
index 96729c1..c3610f2 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -44,5 +44,5 @@ vsync.avi: mkvsync.sh
 clean-vsync-avi:
 	rm -rf vsync.avi .build.tmp
 
-EXTRA_DIST = README mkvsync.sh
+EXTRA_DIST = README mkvsync.sh tearing.mp4
 clean-local: clean-vsync-avi
diff --git a/test/tearing.mp4 b/test/tearing.mp4
new file mode 100644
index 0000000..b53efe9
Binary files /dev/null and b/test/tearing.mp4 differ
commit f38d037b94aacdccb2aaa058bbe48d1c8079d604
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Mon May 27 21:07:20 2013 +0100

    sna/video: Correct interpretation of 'sync'
    
    The 'sync' parameter past along XvPutImage is not a request for us to
    perform the operation synchronised to the vblank, rather a hint that the
    client wishes the operation to be synchronous. In Xorg, this is
    implemented as an immediate ShmCompletion event so make sure we flush
    the operation to hw in this case.
    
    Fixes regression from
    commit 195a51353c3af7bd253227da5f759f06cea01f73 [2.21.8]
    Author: Chris Wilson <chris at chris-wilson.co.uk>
    Date:   Tue Apr 9 19:13:46 2013 +0100
    
        sna/video: Convert to a pure Xv backend
    
    Reported-by: Matti Hamalainen <ccr at tnsp.org>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=65048
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/sna/sna_video_textured.c b/src/sna/sna_video_textured.c
index 29f4d9d..47f4e5d 100644
--- a/src/sna/sna_video_textured.c
+++ b/src/sna/sna_video_textured.c
@@ -235,7 +235,7 @@ sna_video_textured_put_image(ClientPtr client,
 		}
 	}
 
-	if (crtc && sync && video->SyncToVblank != 0 &&
+	if (crtc && video->SyncToVblank != 0 &&
 	    sna_pixmap_is_scanout(sna, pixmap)) {
 		kgem_set_mode(&sna->kgem, KGEM_RENDER, sna_pixmap(pixmap)->gpu_bo);
 		flush = sna_wait_for_scanline(sna, pixmap, crtc,
@@ -254,7 +254,7 @@ sna_video_textured_put_image(ClientPtr client,
 	/* Push the frame to the GPU as soon as possible so
 	 * we can hit the next vsync.
 	 */
-	if (flush)
+	if (flush || sync)
 		kgem_submit(&sna->kgem);
 
 	RegionUninit(&clip);


More information about the xorg-commit mailing list