Michel Dänzer 996eb4b6ae kms/impl-device: Handle sync_fd in meta_kms_impl_device_handle_update
If the KMS thread is using the deadline timer, and a valid sync_file
descriptor is passed in:

1. The update is deferred, and the deadline timer is left armed, until
   the sync_fd signals (becomes readable).
2. Implicit synchronization is disabled for the KMS update.

This means cursor updates should no longer miss a display refresh
cycle due to mutter's compositing GPU work finishing too late.

v2:
* Use g_autoptr for GSource in meta_kms_impl_device_handle_update.
  (Sebastian Wick)
v3:
* Use meta_kms_update_get_sync_fd, don't track sync_fd in
  CrtcFrame::submitted_update. (Jonas Ådahl)
v4:
* Clean up CrtcFrame::submitted_update members in crtc_frame_free.
v5:
* Coding style cleanup in meta_kms_impl_device_handle_update.
  (Jonas Ådahl)

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3958>
2024-08-28 14:42:38 +00:00
..
2024-06-25 20:48:24 +02:00
2023-08-30 08:48:23 +02:00
2023-08-07 22:24:36 +00:00
2023-11-15 10:24:41 +00:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-08-30 08:48:23 +02:00
2023-11-03 11:27:52 +00:00