kwin/plugins/platforms/drm
Roman Gilg a347d009d1 [DrmBackend] Straighten out EGL surface buffer release logic on page flip
The logic on page flips was inconsistent in the sense, that it should never
release a GBM buffer before it's not used (i.e. viewable on the display)
anymore. This happened unintended until now (on page flip we never really
did something useful in the else statement, because if we're here it's not
a GBM buffer anyway).

With this patch we:
* delete on page flips always only the old buffer, which is not used anymore
* release the buffer earlier on interrupts like display disconnect in order
  to be able to destroy the EGL context

Test Plan:
Tested in non atomic mode (atomic mode is obsolete right now until my other
WIP patch D4539 is ready to be merged): Login, logout, suspend, normal use.

Reviewers: #kwin, graesslin

Reviewed By: #kwin, graesslin

Subscribers: plasma-devel, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D5060
2017-03-17 20:41:46 +01:00
..
CMakeLists.txt
drm.json SVN_SILENT made messages (.desktop file) - always resolve ours 2017-02-28 12:58:59 +01:00
drm_backend.cpp Fix typo 2017-01-02 20:13:30 +01:00
drm_backend.h Remove unused method 2016-11-16 14:19:36 +00:00
drm_buffer.cpp
drm_buffer.h
drm_inputeventfilter.cpp
drm_inputeventfilter.h
drm_object.cpp
drm_object.h
drm_object_connector.cpp
drm_object_connector.h
drm_object_crtc.cpp
drm_object_crtc.h
drm_object_plane.cpp
drm_object_plane.h
drm_output.cpp [DrmBackend] Straighten out EGL surface buffer release logic on page flip 2017-03-17 20:41:46 +01:00
drm_output.h [DrmBackend] Straighten out EGL surface buffer release logic on page flip 2017-03-17 20:41:46 +01:00
drm_pointer.h
egl_gbm_backend.cpp [DrmBackend] Straighten out EGL surface buffer release logic on page flip 2017-03-17 20:41:46 +01:00
egl_gbm_backend.h
logging.cpp
logging.h
scene_qpainter_drm_backend.cpp
scene_qpainter_drm_backend.h
screens_drm.cpp
screens_drm.h