mesa/src/egl
Robert Mader 74451ed3f0 egl/wayland: wait for compositor to release shm buffers
Some Wayland compositors, notably Exo, do not always release buffers
fast enough, and not in sync with their frame callbacks, to guarantee
that a free buffer is available the next time a client calls
`eglSwapBuffers()`.

This currently leads to a crash in `dri2_wl_swrast_get_backbuffer_data()`
with the swrast backend. To avoid this, simply block until the
compositor releases a buffer eventually.

While arguably compositors should release buffers they don't need any
more for the next frame, this can be quite complex depending on
the architecture - notably multi-process/IPC in case of Exo.

cc: mesa-stable

Signed-off-by: Robert Mader <robert.mader@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24091>
2023-07-19 15:11:46 +00:00
..
drivers egl/wayland: wait for compositor to release shm buffers 2023-07-19 15:11:46 +00:00
generate EGL: sync headers with Khronos 2022-10-12 19:26:01 +00:00
main egl: Rename _eglAddDevice() to _eglFindDevice() 2023-07-17 22:27:01 +00:00
wayland egl: re-format using clang-format 2023-07-07 23:00:06 +00:00
.clang-format egl: change a couple of clang-format settings 2023-07-07 23:00:06 +00:00
egl-entrypoint-check.py python: explicitly require python3 2021-08-14 21:44:31 +00:00
egl-glvnd-symbols.txt egl: add glvnd symbols check 2019-07-10 11:27:51 +00:00
egl-symbols.txt egl/dri2: Implement the new flush method 2022-11-02 18:11:41 +00:00
meson.build meson: remove needless c++17-overrides 2023-05-19 12:45:31 +00:00