Skip to content

compositor-drm: Don't assert on stray pageflips

Arkadiusz Hiler requested to merge ivyl/weston:stray_pageflips_resilance into main

They do happen. Couple of quick replugs of a DP hub or a bad docking of a laptop in a docking station causes connector creation and destruction as well as multiple, consecutive modesets. Somewhere in that havoc we seem to get one pageflip too much.

e.g.: Output 'DP-4' enabled with head(s) DP-4 atomic: failed with 'Device or resource busy', retrying with 1s backoff DRM: head 'DP-4' updated, connector 119 is disconnected. DRM: head 'DP-6' (connector 322) disappeared. DRM: head 'DP-7' (connector 326) disappeared. Output 'DP-4' no heads left, disabling. Disabling output DP-4 DRM: head 'DP-6' found, connector 315 is connected, EDID make 'AOC', model '28E850', serial 'unknown' DRM: head 'DP-7' found, connector 328 is disconnected. DRM: head 'DP-8' found, connector 330 is disconnected. Chosen EGL config details: RGBA bits: 8 8 8 0 swap interval range: 1 - 1 Output DP-6 (crtc 81) video modes: 1920x1080@60.0, preferred, current, 148.5 MHz Output 'DP-6' enabled with head(s) DP-6 atomic: failed with 'Device or resource busy', retrying with 1s backoff DRM: head 'DP-4' (connector 119) disappeared. atomic: failed with 'Device or resource busy', retrying with 1s backoff atomic: failed with 'Device or resource busy', retrying with 1s backoff Stary pageflip on DP-6

For now, let's be more resilient in general, and just log stary pageflips instead of segfaulting on them.

Signed-off-by: Arkadiusz Hiler arek@hiler.eu

Merge request reports