weston/libweston
Michael Olbrich d5e5428478 backend-drm: don't copy the fence fd when duplicating the plane state
The state does not own the fd. This is usually not a problem, because the
in_fence_fd of the state is assigned during drm_assign_planes() and then
immediately used in drm_repaint_flush(). It cannot be closed in-between.

However, in the fallback path in drm_output_start_repaint_loop(), the state is
duplicated. At this point in time, the in_fence_fd may be invalid because it was
replaced in a new commit of the corresponding surface.

The plane state was already committed to the kernel when it is copied, so the
fence is no longer needed. So just clear it.

Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
2023-03-22 11:41:56 +00:00
..
backend-drm backend-drm: don't copy the fence fd when duplicating the plane state 2023-03-22 11:41:56 +00:00
backend-headless gl-renderer: use pixel_format_info instead of drm fourccs 2023-01-29 14:47:03 +01:00
backend-rdp backend: Make input notification functions use weston_coord 2023-02-09 12:12:40 +00:00
backend-vnc backend-vnc: rename vnc_convert_damage to vnc_region_global_to_output 2023-02-28 08:45:48 +02:00
backend-wayland backend-wayland: reuse backend->formats[0] as pixman/cairo/shm pixel format 2023-02-16 09:48:55 +00:00
backend-x11 backend-x11: use weston_coord to store previous pointer position 2023-02-24 18:44:19 +00:00
color-lcms color-lcms: add support for matrices 2022-09-28 10:28:28 +00:00
desktop libweston: Use weston_coord in surface committed handler 2023-02-24 18:44:19 +00:00
renderer-gl clipping: Use struct weston_coord in vertex clipping code 2023-02-09 12:12:40 +00:00
shell-utils libweston: Convert struct weston_subsurface to weston_coord 2023-02-24 18:44:19 +00:00
animation.c Fix indentation all through the project 2021-07-31 15:28:20 +00:00
auth.c libweston: Add user authentication support via PAM 2022-11-23 16:58:48 +01:00
backend.h backend: Make input notification functions use weston_coord 2023-02-09 12:12:40 +00:00
bindings.c Don't send compositor's global key bindings to the input method 2022-02-23 15:40:33 +02:00
clipboard.c libweston: correct argument name in the handler of wl_data_source.accept 2022-04-14 12:05:57 +00:00
color-noop.c libweston: add HDR metadata to weston_output 2022-05-27 10:30:35 +00:00
color.c backend-drm: check for HDR_OUTPUT_METADATA 2022-05-02 12:19:24 +00:00
color.h gl-renderer: add matrix 2022-09-28 10:28:28 +00:00
compositor.c libweston: mitigate race when destroying outputs 2023-03-14 13:24:32 +02:00
content-protection.c content-protection: Don't leak update timer on shutdown 2021-12-08 13:38:18 +00:00
data-device.c libweston: Use weston_coord in surface committed handler 2023-02-24 18:44:19 +00:00
dbus.c dbus: Don't return value from void function 2019-06-11 11:31:04 +01:00
dbus.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
drm-formats.c drm-formats: add weston_drm_format_array_count_pairs() 2021-11-25 10:47:45 -03:00
git-version.h.meson Add Meson build system 2018-12-09 14:50:54 +02:00
gl-borders.c libweston, backends: move GL renderer interface into weston_renderer 2023-01-16 20:40:34 +01:00
gl-borders.h libweston, backends: move GL renderer interface into weston_renderer 2023-01-16 20:40:34 +01:00
input.c libweston: Add assert for valid confine region in maybe_warp_confined_pointer() 2023-03-13 16:09:33 -05:00
launcher-impl.h launchers: Remove --tty option 2022-03-03 17:00:15 -06:00
launcher-libseat.c libweston: Enable logging for libseat launcher 2022-03-10 17:13:16 +02:00
launcher-logind.c libweston, backends: pass backend parameter to weston_backend functions 2023-01-13 18:55:59 +01:00
launcher-util.c launchers: Remove --tty option 2022-03-03 17:00:15 -06:00
launcher-util.h launchers: Remove --tty option 2022-03-03 17:00:15 -06:00
libinput-device.c input: Convert weston_pointer_motion_event to weston_coord 2023-02-09 12:12:40 +00:00
libinput-device.h compositor: Use paced logger for unknown scroll source 2022-11-08 08:32:26 -06:00
libinput-seat.c libweston: Use weston_coord in struct weston_pointer 2023-02-17 13:51:23 +00:00
libinput-seat.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
libweston-internal.h input: Use weston_coord for pointer clamping 2023-02-17 13:51:23 +00:00
linux-dmabuf.c helpers: Add a u64 from 2 u32 helper 2022-10-27 08:13:30 +00:00
linux-dmabuf.h linux-dmabuf: add missing includes and declarations 2022-12-16 15:05:10 +02:00
linux-explicit-synchronization.c libweston: Advertise minor version 2 of zwp_linux_explicit_synchronization_v1 2019-08-02 15:00:08 +00:00
linux-explicit-synchronization.h libweston: Support zwp_surface_synchronization_v1.set_acquire_fence 2019-02-06 12:21:56 +00:00
linux-sync-file-uapi.h libweston: Introduce an internal linux sync file API 2019-02-06 12:21:56 +00:00
linux-sync-file.c libweston: export weston_linux_sync_file_read_timestamp() 2019-04-18 12:50:55 +03:00
linux-sync-file.h libweston: export weston_linux_sync_file_read_timestamp() 2019-04-18 12:50:55 +03:00
log.c libweston: Add weston_log_paced() 2022-11-08 08:32:26 -06:00
meson.build libweston: Add support for tearing-control 2023-02-01 10:12:55 -06:00
noop-renderer.c pixman-renderer: set renderbuffer via new repaint_output parameter 2023-01-23 20:05:21 +00:00
output-capture.c Revert "libweston: let weston_output_update_capture_info() take drm_format" 2023-01-28 12:59:16 +00:00
output-capture.h Revert "libweston: let weston_output_update_capture_info() take drm_format" 2023-01-28 12:59:16 +00:00
pixel-formats.c pixel-formats: add pixel_format_get_array() 2023-01-29 14:47:03 +01:00
pixel-formats.h pixel-formats: add pixel_format_get_array() 2023-01-29 14:47:03 +01:00
pixman-renderer.c pixman-renderer: hold a reference for renderbuffers on the output state list 2023-03-03 07:36:32 +00:00
pixman-renderer.h pixman-renderer: use pixel_format_info instead of pixman_format_code_t 2023-01-28 12:59:16 +00:00
plugin-registry.c Rename plugin-registry.h to libweston/plugin-registry.h 2019-04-18 12:31:46 +03:00
screenshooter.c screenshooter: Add SHM buffer destroy listener to avoid invalid memcpy 2022-10-03 16:52:16 +02:00
spring-tool.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
timeline.c libweston: fix typos 2021-02-24 10:01:17 -05:00
timeline.h libweston: move TYPEVERIFY macro into shared 2021-02-17 12:52:33 +00:00
touch-calibration.c libweston: Use weston_coord space conversion functions 2023-02-01 07:27:05 -06:00
vertex-clipping.c clipping: Use struct weston_coord in vertex clipping code 2023-02-09 12:12:40 +00:00
vertex-clipping.h clipping: Use struct weston_coord in vertex clipping code 2023-02-09 12:12:40 +00:00
weston-direct-display.c libweston: Add weston-direct-display server side implementation 2019-11-18 19:33:09 +02:00
weston-log-file.c weston-log: destroy subscriptions with destruction of subscribers 2020-02-10 10:53:50 +00:00
weston-log-flight-rec.c weston-log-flight-rec: Map ring buffer using memset() 2023-03-10 11:35:04 +01:00
weston-log-internal.h weston-log-wayland: make stream_destroy() use weston_log_subscriber_release() 2020-02-10 10:53:50 +00:00
weston-log-wayland.c Fix indentation all through the project 2021-07-31 15:28:20 +00:00
weston-log.c weston-log: Fix documentation for weston_log_subscription_create 2022-07-01 17:20:18 +03:00