Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#69859 - Pipewire's default realtime settings might lead to system freezing for a second

Attached to Project: Arch Linux
Opened by Yago Mont' Alverne (yagocl) - Tuesday, 02 March 2021, 20:32 GMT
Last edited by David Runge (dvzrv) - Tuesday, 08 February 2022, 17:32 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Jan Alexander Steffens (heftig)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Observed with pipewire 1:0.3.22-1, pipewire-pulse 1:0.3.22-1 and linux-zen (MuQSS related bug?)

Using pipewire as a replacement for pulse under high CPU load, I noticed that rarely the X11 server would become unresponsive for a second or so. without any skipping or audio glitches at all. Looking at the system journal, I see this:

pipewire-pulse[2774]: loop 0x560b45205848: queue full 0
pipewire-pulse[2774]: loop 0x560b45205848: queue full 0
pipewire-pulse[2774]: loop 0x560b45205848: queue full 0
[Message repeats a hundred times]

Not sure what caused it, but it would seem that the short lockup would be caused by the aggressive realtime options set in.
Changing /etc/pipewire.conf may help fix it. Specifically this part, reducing rt.time.hard and maybe rt.time.sort from 20000 (I'd hope that someone with more experience with realtime scheduling could see if this is an appropriate change.):

# Uses RTKit to boost the data thread priority.
libpipewire-module-rtkit = {
args = {
nice.level = -11
rt.prio = 20
rt.time.soft = 5000
rt.time.hard = 5000
}
This task depends upon

Closed by  David Runge (dvzrv)
Tuesday, 08 February 2022, 17:32 GMT
Reason for closing:  Not a bug
Additional comments about closing:  Use realtime-privileges or rtkit for setting/ allowing the appropriate realtime setting and refer to the upstream documentation on how to set/ fine tune this for your own system.
Comment by Valentin Iovene (tgy) - Friday, 23 April 2021, 11:56 GMT
I just set up a new Arch Linux machine with Pipewire and I have severe issues looking a lot like what's mention in this bug.

Versions of packages:

$ pacman -Ss pipewire | grep installed
extra/gst-plugin-pipewire 1:0.3.26-1 [installed: 1:0.3.25-1]
extra/libpipewire02 0.2.7-1 [installed]
extra/pipewire 1:0.3.26-1 [installed: 1:0.3.25-1]
extra/pipewire-alsa 1:0.3.26-1 [installed: 1:0.3.25-1]
extra/pipewire-docs 1:0.3.26-1 [installed: 1:0.3.25-1]
extra/pipewire-jack 1:0.3.26-1 [installed: 1:0.3.25-1]
extra/pipewire-media-session 1:0.3.26-1 [installed: 1:0.3.25-1]
extra/pipewire-pulse 1:0.3.26-1 [installed: 1:0.3.25-1]

Some logs that I am seeing in pipewire-pulse.service

-- Boot 8ad2f494ff4a4f02b3a5b56fc6aeae33 --
Apr 23 10:10:00 velchko systemd[664]: Started PipeWire PulseAudio.
Apr 23 11:30:47 velchko pipewire-pulse[673]: send channel:-1 20, res -1: Broken pipe
Apr 23 11:30:52 velchko pipewire-pulse[673]: recv client:0x55bb5042eb30 res -1: Connection reset by peer
Apr 23 11:30:52 velchko pipewire-pulse[673]: pulse-server 0x55bb4fa60b50: client:0x55bb5042eb30 [qutebrowser] error -104 (Connection reset by peer)
Apr 23 13:47:19 velchko pipewire-pulse[673]: pulse-server 0x55bb5043c730: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:12 error:19 (Operation not supported)
Apr 23 13:47:19 velchko pipewire-pulse[673]: pulse-server 0x55bb5043c730: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:13 error:19 (Operation not supported)
Apr 23 13:47:19 velchko pipewire-pulse[673]: pulse-server 0x55bb5043c730: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:14 error:19 (Operation not supported)
Apr 23 13:47:19 velchko pipewire-pulse[673]: pulse-server 0x55bb5043c730: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:15 error:19 (Operation not supported)
Apr 23 13:47:19 velchko pipewire-pulse[673]: pulse-server 0x55bb5043c730: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:17 error:19 (Operation not supported)
Apr 23 13:47:19 velchko pipewire-pulse[673]: pulse-server 0x55bb5043c730: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:19 error:19 (Operation not supported)
Apr 23 13:47:19 velchko pipewire-pulse[673]: pulse-server 0x55bb5043c730: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:21 error:19 (Operation not supported)
Apr 23 13:47:19 velchko pipewire-pulse[673]: pulse-server 0x55bb5043c730: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:23 error:19 (Operation not supported)
Apr 23 13:47:22 velchko pipewire-pulse[673]: pulse-server 0x55bb5043edd0: [librespot] UNDERFLOW channel:0 offset:2344476 underrun:7524
Apr 23 13:47:30 velchko pipewire-pulse[673]: pulse-server 0x55bb5043edd0: [librespot] UNDERFLOW channel:0 offset:3661596 underrun:7528
Apr 23 13:47:32 velchko pipewire-pulse[673]: 1 events suppressed
Apr 23 13:47:32 velchko pipewire-pulse[673]: pulse-server 0x55bb5043edd0: [librespot] UNDERFLOW channel:0 offset:3925020 underrun:7528
Apr 23 13:47:45 velchko pipewire-pulse[673]: loop 0x55bb4fa3efc8: queue full 0
Apr 23 13:47:45 velchko pipewire-pulse[673]: loop 0x55bb4fa3efc8: queue full 0
Apr 23 13:47:45 velchko pipewire-pulse[673]: loop 0x55bb4fa3efc8: queue full 0
Apr 23 13:47:45 velchko pipewire-pulse[673]: loop 0x55bb4fa3efc8: queue full 0
Apr 23 13:47:45 velchko pipewire-pulse[673]: loop 0x55bb4fa3efc8: queue full 0
Apr 23 13:47:45 velchko pipewire-pulse[673]: loop 0x55bb4fa3efc8: queue full 0
Apr 23 13:47:45 velchko pipewire-pulse[673]: loop 0x55bb4fa3efc8: queue full 0
Apr 23 13:47:45 velchko pipewire-pulse[673]: loop 0x55bb4fa3efc8: queue full 0

Loading...