Pipewire-pulse segfaults when something is trying to connect to pulseaudio API
- PipeWire version (
pipewire --version
): 0.3.42 - Distribution and distribution version (
PRETTY_NAME
from/etc/os-release
): Debian GNU/Linux bookworm/sid - Desktop Environment: KDE
- Kernel version (
uname -r
): 5.15.0-2-amd64
Description of Problem:
Pipewire-pulse segfaults when a tool tries to connect to it.
How Reproducible:
Always.
Steps to Reproduce:
- Setup https://git.shigusegubu.club/HJ/midicontrolpa (small tool i've written in JS/Node for controlling volumes with MIDI)
- Try to launch it while pipewire+pipewire-pulse are working
Actual Results:
Nothing crashes
Expected Results:
Pipewire-pulse crashes:
Starting program: /usr/bin/pipewire-pulse
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[W][23083.932010] mod.protocol-pulse | [ server.c: 577 start_unix_server()] server 0x55555558b8e0: unlinking stale socket '/run/user/1000/pulse/native'
[New Thread 0x7ffff7317640 (LWP 139449)]
Thread 1 "pipewire-pulse" received signal SIGSEGV, Segmentation fault.
0x00007ffff74df2a2 in do_get_server_info (client=0x5555555d6420, command=20, tag=2, m=0x5555555d22b0) at ../src/modules/module-protocol-pulse/pulse-server.c:3131
3131 ../src/modules/module-protocol-pulse/pulse-server.c: No such file or directory.
(gdb) bt
#0 0x00007ffff74df2a2 in do_get_server_info (client=0x5555555d6420, command=20, tag=2, m=0x5555555d22b0) at ../src/modules/module-protocol-pulse/pulse-server.c:3131
#1 0x00007ffff74f3e48 in handle_packet (msg=<optimized out>, client=0x5555555d6420) at ../src/modules/module-protocol-pulse/server.c:99
#2 do_read (client=0x5555555d6420) at ../src/modules/module-protocol-pulse/server.c:265
#3 on_client_data (data=0x5555555d6420, fd=<optimized out>, mask=<optimized out>) at ../src/modules/module-protocol-pulse/server.c:296
#4 0x00007ffff7f9e68b in ?? () from /usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-support.so
#5 0x00007ffff7f01e9f in pw_main_loop_run (loop=loop@entry=0x555555567580) at ../src/pipewire/main-loop.c:155
#6 0x000055555555543b in main (argc=<optimized out>, argv=<optimized out>) at ../src/daemon/pipewire.c:129
Additional Info (as attachments):
-
pw-dump > pw-dump.log
: pw-dump.log