D24954: Dmabuf recovery on EGL reset
Roman Gilg <[email protected]>
| Newsgroups | gmane.comp.kde.devel.kwin |
|---|---|
| Message-ID | <[email protected]> |
romangg created this revision. romangg added a reviewer: KWin. Herald added a project: KWin. Herald added a subscriber: kwin. romangg requested review of this revision. REVISION SUMMARY The EGL platform might go away at any time through reconfiguration or because of a graphic error. KWin then resets the graphics. The dmabuf implementation must respect that and recover from a graphics reset by recreating all EGL images for existing buffer. This assumes that we won't change our graphics API mid-session and that supported plane and modifier configuration stays constant. In practise we remember all current dmabufs in a single map and only remove them if the client did destroy the resource. BUG: 411980 CCBUG: 413403 FIXED-IN: 5.17.2 TEST PLAN Applied screenedge configuration without crash. REPOSITORY R108 KWin BRANCH dmabufReset REVISION DETAIL https://phabricator.kde.org/D24954 AFFECTED FILES CMakeLists.txt linux_dmabuf.cpp linux_dmabuf.h platformsupport/scenes/opengl/CMakeLists.txt platformsupport/scenes/opengl/abstract_egl_backend.cpp platformsupport/scenes/opengl/egl_dmabuf.cpp platformsupport/scenes/opengl/egl_dmabuf.h platformsupport/scenes/opengl/linux_dmabuf.cpp platformsupport/scenes/opengl/linux_dmabuf.h wayland_server.cpp wayland_server.h To: romangg, #kwin Cc: kwin, LeGast00n, The-Feren-OS-Dev, sbergeron, jraleigh, fbampaloukas, GB_2, mkulinski, ragreen, jackyalcine, iodelay, crozbo, bwowk, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, hardening, romangg, jensreuterberg, abetts, sebas, apol, ahiemstra, mart