wlroots/backend
Rouven Czerwinski cdd9a60f72 Revert "backend/drm: Check if output is enabled before sending frame event"
This reverts commit 85757665e6.

We now check if the output is enabled within wlr_output_send_frame, no
need to handle this explicitly in the DRM backend. This also fixes a
race which was introduced with this commit: if we schedule the flip,
disable and commit the output before the flip happens,
output.frame_pending will not be reset to false. We than always fail to
enable the output subsequently:

      00:07:13.276 [INFO] [sway/commands.c:257] Handling command 'output DP-2 enable'
      00:07:13.276 [DEBUG] [sway/commands.c:428] Subcommand: enable
      00:07:13.276 [DEBUG] [sway/config/output.c:204] Merging on top of existing output config
      00:07:13.276 [DEBUG] [sway/config/output.c:227] Config stored for output DP-2 (enabled: 1) (-1x-1@-1.000000Hz position 0,0 scale -1.000000 subpixel unknown transform -1) (bg /home/phoenix/Pictures/Wallpapers/mine/oper.jpg fill) (dpms 1) (max render time: -1)
      00:07:13.276 [DEBUG] [sway/config/output.c:351] Turning on output DP-2
      00:07:13.276 [DEBUG] [sway/config/output.c:360] Set preferred mode
      00:07:13.276 [DEBUG] [wlr] [backend/drm/drm.c:465] connector DP-2: Can't enable an output without a buffer
      00:07:13.276 [DEBUG] [wlr] [types/wlr_output.c:689] Attaching empty buffer to output for modeset
      00:07:13.277 [DEBUG] [sway/config/output.c:329] Output DPI: 162.560000x161.364706
      00:07:13.277 [DEBUG] [sway/config/output.c:400] Auto-detected output scale: 1.000000
      00:07:13.277 [DEBUG] [sway/config/output.c:430] Committing output DP-2
      00:07:13.277 [DEBUG] [wlr] [types/wlr_output.c:729] Tried to commit a buffer while a frame is pending

since the basic_output_test will always fail.
Reset frame_pending to false even if the output has been disabled in the
meantime.

Fixes https://github.com/swaywm/wlroots/issues/3109
2021-08-17 21:07:43 +02:00
..
drm Revert "backend/drm: Check if output is enabled before sending frame event" 2021-08-17 21:07:43 +02:00
headless backend/headless: remove wlr_output_impl.export_dmabuf 2021-07-12 13:29:03 -04:00
libinput input/tablet: fix `wl_array_for_each` usage on tablet proximity 2021-08-15 23:26:51 +02:00
multi backend: introduce wlr_backend_finish 2021-05-21 22:13:54 +02:00
noop backend/noop: drop attach_render/rollback_render 2021-07-29 09:48:33 -04:00
session backend/session: use DRM_PRIMARY_MINOR_NAME 2021-06-17 00:28:04 +02:00
wayland output: drop wlr_output_state.buffer_type 2021-07-29 09:48:33 -04:00
x11 output: drop wlr_output_state.buffer_type 2021-07-29 09:48:33 -04:00
backend.c backend/drm: drop get_renderer implementation 2021-07-28 22:52:35 +02:00
meson.build backend: make DRM and libinput backends optional 2021-07-22 09:56:38 -04:00