diff -ur a/src/backends/x11/meta-renderer-x11.c b/src/backends/x11/meta-renderer-x11.c
--- a/src/backends/x11/meta-renderer-x11.c	2017-10-30 23:24:49.000000000 +0100
+++ b/src/backends/x11/meta-renderer-x11.c	2018-08-08 19:03:10.824722288 +0200
@@ -80,7 +80,10 @@
    * to work properly, even when Mutter is constantly redrawing new frames;
    * otherwise, without INTEL_swap_event, we'll just block in glXSwapBuffers().
    */
-  cogl_xlib_renderer_set_threaded_swap_wait_enabled (cogl_renderer, TRUE);
+  if (_clutter_get_sync_to_vblank ())
+    cogl_xlib_renderer_set_threaded_swap_wait_enabled (cogl_renderer, TRUE);
+  else
+    cogl_xlib_renderer_set_threaded_swap_wait_enabled (cogl_renderer, FALSE);
 
   return cogl_renderer;
 }
