mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-10-29 05:40:27 -04:00
Some clients don't call _poll_descriptors() before entering the poll and so don't get updated fds. This would result in a whole bunch of wakeups when the eventfd was set but the new state is no longer active. Part of the problem is also that check_active() returns the desired new state and update_active() does check_active() + update. We could be getting into a new desired inactive state without updating the eventfd. Improve this by merging them together into update_active() which only writes/reads the eventfd when something changes. This also makes things less heavy because the eventfd is only read/written when needed. Fixes #3648 |
||
|---|---|---|
| .. | ||
| alsa-plugins | ||
| conf | ||
| tests | ||