Mesa (master): egl/wayland: Make swrast display_sync the correct queue

Daniel Stone daniels at kemper.freedesktop.org
Thu Mar 22 15:27:50 UTC 2018


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

Author: Derek Foreman <derekf at osg.samsung.com>
Date:   Thu Mar 22 10:20:43 2018 -0500

egl/wayland: Make swrast display_sync the correct queue

commit 03dd9a88b0be17ff0ce91e92f6902a9a85ba584a introduced per surface
queues, but the display_sync for swrast_commit_backbuffer remained on
the old queue.  This is likely to break when dispatching the correct
queue at the top of function (which can't dispatch the sync callback
we're waiting for).

The easiest known reproduction case is running weston-subsurfaces under
weston --use-pixman

Signed-off-by: Derek Foreman <derekf at osg.samsung.com>
Reviewed-by: Daniel Stone <daniels at collabora.com>

---

 src/egl/drivers/dri2/platform_wayland.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c
index 94f7defa65..80853ac00b 100644
--- a/src/egl/drivers/dri2/platform_wayland.c
+++ b/src/egl/drivers/dri2/platform_wayland.c
@@ -1751,7 +1751,7 @@ dri2_wl_swrast_commit_backbuffer(struct dri2_egl_surface *dri2_surf)
     * handle the commit and send a release event before checking for a free
     * buffer */
    if (dri2_surf->throttle_callback == NULL) {
-      dri2_surf->throttle_callback = wl_display_sync(dri2_dpy->wl_dpy_wrapper);
+      dri2_surf->throttle_callback = wl_display_sync(dri2_surf->wl_dpy_wrapper);
       wl_callback_add_listener(dri2_surf->throttle_callback,
                                &throttle_listener, dri2_surf);
    }




More information about the mesa-commit mailing list