weston/libweston
Marius Vlad 44d185138f libweston/backend-headless: Remove cleanup_after_cairo()
In some circumstances (like system load) we seem to be racing with the
threads fontconfig creates and the resource release happening inside
cleanup_after_cairo(), and we would still find a cached entry holding a
font map reference while we are on the compositor exit path --
which happens in cleanup_after_cairo() when calling
cairo_debug_reset_static_data().

This was introduced with commit 823580e070, 'backend-headless: fully
release pango and fontconfig', as a way to have a clean memory leak
report, but due to the fact we can't influence how libraries manage
their threads, the solution (for now at least) would be to just remove
it entirely.

Running it at the end in the test itself, or before calling exit(2),
while it does narrow the window, it still exhibits the cairo crash assert
related to having cached entries in that font map hash table.

Reference: https://gitlab.freedesktop.org/wayland/weston/-/issues/756

Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
2023-06-07 13:09:21 +03:00
..
backend-drm drm: do not pull writeback task if KMS atomic API is not supported 2023-06-05 07:51:27 +00:00
backend-headless libweston/backend-headless: Remove cleanup_after_cairo() 2023-06-07 13:09:21 +03:00
backend-pipewire backend-pipewire: remove unused fields from pipewire_frame_data 2023-05-23 10:41:25 +02:00
backend-rdp libweston: consolidate 'Using GL/Pixman renderer' log message 2023-05-04 14:47:49 +02:00
backend-vnc libweston: consolidate 'Using GL/Pixman renderer' log message 2023-05-04 14:47:49 +02:00
backend-wayland backend-wayland: fix --fullscreen 2023-05-30 08:35:23 +02:00
backend-x11 libweston: consolidate 'Using GL/Pixman renderer' log message 2023-05-04 14:47:49 +02:00
color-lcms color-lcms: print curve sets on pipeline optimizer debug scope 2023-05-26 10:31:34 +00:00
desktop libweston-desktop: implement tablet tool grab 2023-03-31 12:10:26 +00:00
renderer-gl gl-renderer: Get rid of begin fence sync 2023-04-03 09:52:36 +02: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 input: add weston grab interfaces for tablet tools 2023-03-31 12:10:26 +00:00
bindings.c input: Fix uint/enum declaration mismatch 2023-04-11 11:44:34 +00: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 color-lcms: add debug scope for color tranformations 2023-04-12 10:03:32 +00:00
color.h color-lcms: add debug scope for color tranformations 2023-04-12 10:03:32 +00:00
compositor.c libweston: consolidate 'Using GL/Pixman renderer' log message 2023-05-04 14:47:49 +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/input: Use WESTON_ACTIVATE_FLAG_FULLSCREEN in activation logic 2023-05-25 12:07:03 +03: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 libinput: hook up tablet events 2023-03-31 12:10:26 +00:00
libinput-device.h libinput: hook up tablet events 2023-03-31 12:10:26 +00: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 tablet: Add binding to activate surfaces using the tablet tool 2023-03-31 12:10:26 +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,shared/meson:build Add xkbcommon missing depends 2023-05-18 19:23:12 +03:00
noop-renderer.c pixman-renderer: set renderbuffer via new repaint_output parameter 2023-01-23 20:05:21 +00:00
output-capture.c drm: allow to skip composition if pending capture is writeback 2023-03-31 10:36:31 +00:00
output-capture.h drm: allow to skip composition if pending capture is writeback 2023-03-31 10:36:31 +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 libweston/weston-log: Add a iterator helper for debug scope 2023-05-30 11:05:14 +00:00