pipewire/pipewire-jack
Wim Taymans c58e187590 jack: sync threads by pausing the core
When we clear the port io, pause the core until the invoke call
completed. This way we don't start processing other messages until we
have safely removed the port io.

Normally, when clearing a link on a port, first the mix io will be set
to NULL and then the format will be cleared, which clears the buffers
as well. By delaying the processing of the format clear until the io
is removed from the data thread we avoid taking away the buffer memory
from the processing thread prematurely.

When creating a link, first the format and buffers are configured and
then the io is set, which should be safe in all cases.

See !1915
2024-02-21 10:39:12 +01:00
..
examples treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
jack Update FSF address 2023-08-07 09:36:59 +00:00
src jack: sync threads by pausing the core 2024-02-21 10:39:12 +01:00
meson.build [Meson] Change jack-devel option to be boolean 2021-08-06 07:56:16 +00:00