I guess you're not going to get a useful response here. That seems really unfortunate to me. Please open a bug here, so we at least have a proper record of the problem: https://bugs.freedesktop.org/enter_bug.cgi?product=Wayland
On 04/19, Arnaud Vrac wrote: > Hello everyone, > > I am hitting a bug when using Qt5 and wayland on an embedded platform, > for which I have written a custom EGL backend. The problem is that Qt5 > (QtQuick2 actually) renders in a separate thread, when the wayland > display has been created in the main thread. I know there is a patch > for "thread affinity" in qtwayland to solve this, but it is wrong and > breaks other clients. > > Since it is required from the EGL spec to be able to render in > multiple threads, how can this be solved ? Does the wayland backend > for mesa support this properly ? I don't see how it can work since > even writes in the connection queue are not protected. > > Here is a crude extract from my EGL backends where wayland can fail > because of thread concurrency: > > - SwapBuffers: > > while (!swap_done) { > wl_display_flush() > // wait frame callback > wl_display_iterate(WL_DISPLAY_READABLE) > } > > wl_surface_frame() > wl_surface_attach() > wl_surface_damage() > lock_back_buffer() > swap_buffers() > > - GetBuffers (called on makeCurrent or at the first gl call after swap) > > while (no_buffer_unlocked) > wl_display_flush() > // wait for a buffer to be released > wl_display_iterate(WL_DISPLAY_READABLE) > } > > Thanks for your help, > > -- > rawoul > _______________________________________________ > wayland-devel mailing list > wayland-devel@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/wayland-devel > -- "For every complex problem, there is a solution that is simple, neat, and wrong." - H. L. Mencken http://www.ChaosReigns.com _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel