xf86-video-intel: tools/virtual.c

Chris Wilson ickle at kemper.freedesktop.org
Mon Sep 2 13:56:35 PDT 2013


 tools/virtual.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

New commits:
commit c8dc27e00ef052c585abaa27c09f564c1548c87b
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Mon Sep 2 21:53:37 2013 +0100

    intel-virtual-overlay: Disable the timer after flushing
    
    As the flush may queue work that causes the timer to be reactivated
    prior to draining the queue, we need to flush first then turn off the
    timer if idle.
    
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/tools/virtual.c b/tools/virtual.c
index 6759135..ec83701 100644
--- a/tools/virtual.c
+++ b/tools/virtual.c
@@ -2527,12 +2527,14 @@ int main(int argc, char **argv)
 		if (ctx.timer_active && read(ctx.timer, &count, sizeof(count)) > 0 && count > 0) {
 			DBG(("%s timer expired (count=%ld)\n", DisplayString(ctx.display->dpy), (long)count));
 			ret = 0;
+
 			for (i = 0; i < ctx.nclone; i++)
 				ret |= clone_paint(&ctx.clones[i]);
-			ctx.timer_active = ret != 0;
 
 			for (i = 0; i < ctx.ndisplay; i++)
 				display_flush(&ctx.display[i]);
+
+			ctx.timer_active = ret != 0;
 		}
 
 		XPending(ctx.record);


More information about the xorg-commit mailing list