Mesa (master): egl/wayland: Send commit after flushing the driver context

Kristian Høgsberg krh at kemper.freedesktop.org
Thu Dec 5 00:15:10 UTC 2013


Module: Mesa
Branch: master
Commit: 33eb5eabeec0c17e81b6bb11be703701e4025d4e
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=33eb5eabeec0c17e81b6bb11be703701e4025d4e

Author: Kristian Høgsberg <krh at bitplanet.net>
Date:   Wed Dec  4 12:08:35 2013 -0800

egl/wayland: Send commit after flushing the driver context

This typically won't make a difference, since we only send the requests at
wl_display_flush() time.  There might be a small race
with another thread calling wl_display_flush() after our commit request,
but before we flush the DRI driver.  Moving the commit below the DRI
driver flush call looks more natural and eliminates the small race.

Cc: "10.0" mesa-stable at lists.freedesktop.org

---

 src/egl/drivers/dri2/platform_wayland.c |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)

diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c
index 9dfe427..8f462c0 100644
--- a/src/egl/drivers/dri2/platform_wayland.c
+++ b/src/egl/drivers/dri2/platform_wayland.c
@@ -610,11 +610,10 @@ dri2_swap_buffers_with_damage(_EGLDriver *drv,
       }
    }
 
-   wl_surface_commit(dri2_surf->wl_win->surface);
-
    (*dri2_dpy->flush->flush)(dri2_surf->dri_drawable);
    (*dri2_dpy->flush->invalidate)(dri2_surf->dri_drawable);
 
+   wl_surface_commit(dri2_surf->wl_win->surface);
    wl_display_flush(dri2_dpy->wl_dpy);
 
    return EGL_TRUE;




More information about the mesa-commit mailing list