pipewire/pipewire-jack/src
Wim Taymans 0f9fd45a58 jack: rework locking
Ensure all callbacks are called from the thread_loop and release
the thread lock before calling the callback.

Introduce a new rt_lock that is taken while the callbacks are called.
Only call the process_callback when we can acquire the rt_lock in the
data thread. This ensures the process callback is never called
concurrently with any other callback.

Give a warning when we try to call do_sync from the thread_loop
itself. We would deadlock because the thread that is supposed to do
the sync operation would be blocked in wait().

Fixes #1313
2021-06-17 10:46:04 +02:00
..
control.c meson.build: drop HAVE_CONFIG_H 2021-06-10 09:04:16 +10:00
dummy.c meson.build: drop HAVE_CONFIG_H 2021-06-10 09:04:16 +10:00
export.c jack: declare constants like jack does again 2020-10-22 15:23:56 +02:00
meson.build meson.build: drop HAVE_CONFIG_H 2021-06-10 09:04:16 +10:00
metadata.c meson.build: drop HAVE_CONFIG_H 2021-06-10 09:04:16 +10:00
pipewire-jack-extensions.h jack: add jack_get_video_image_size extension 2020-02-07 13:31:49 +01:00
pipewire-jack.c jack: rework locking 2021-06-17 10:46:04 +02:00
pw-jack.in pw-jack: Fix empty string checks 2021-05-31 12:46:18 -04:00
ringbuffer.c meson.build: drop HAVE_CONFIG_H 2021-06-10 09:04:16 +10:00
statistics.c jack: check arguments 2020-02-24 11:25:31 +01:00
uuid.c meson.build: drop HAVE_CONFIG_H 2021-06-10 09:04:16 +10:00