wireplumber crashes when starting a call
Describe your issue
What's the current behaviour?
Starting a call in gnome-calls immediately causes wireplumber to crash with:
$ wireplumber
...
dbus[13902]: arguments to dbus_message_get_path() were incorrect, assertion "message != NULL" failed in file dbus-message.c line 3345.
This is normally a bug in some application using the D-Bus library.
D-Bus not compiled with backtrace support so unable to print a backtrace
Aborted
(Despite the "dbus" tag, the PID really is wireplumber's.)
It's not sufficient to just switch from HiFi to VoiceCall profile via callaudiocli
/ pactl
; only starting an actual call makes it crash.
The cause is a bug in bluez plugin provided by pipewire-spa-bluez
package, which is now installed because of https://gitlab.alpinelinux.org/alpine/aports/-/commit/82db052193731d50b4146ab38b278a87aca2f732 + d375a5d7 (@pabloyoyoista FYI) and cannot be uninstalled without also uninstalling postmarketos-base-ui-audio-pipewire
. One workaround is to mv /usr/lib/spa-0.2/bluez5 /usr/lib/spa-0.2/bluez5.bak
. There might be a cleaner way to do it via a wireplumber.conf.d
dropin.
Fix is now merged in upstream in https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/2041
What device are you using?
pine64-pinephone, but it's not device-specific.
On what postmarketOS version did you encounter the issue?
-
edge ( master
branch) -
v23.12
-
v24.06
-
I confirm that the issue still is present after running sudo apk upgrade -a
On what environment did you encounter the issue?
Environments
-
GNOME Shell on Mobile -
Phosh -
Plasma Mobile -
Sxmo (Wayland/Sway) Please post the output of sxmo_version.sh
-
Other: Please fill out
(gdb) bt
#0 __restore_sigs (set=set@entry=0xfffffffff100) at ./arch/aarch64/syscall_arch.h:48
#1 0x0000fffff7f8f088 in raise (sig=sig@entry=6) at src/signal/raise.c:11
#2 0x0000fffff7f5dc74 in abort () at src/exit/abort.c:11
#3 0x0000fffff773da1c in _dbus_abort () from /usr/lib/libdbus-1.so.3
#4 0x0000fffff773daf0 in _dbus_warn_check_failed () from /usr/lib/libdbus-1.so.3
#5 0x0000fffff77293b4 in dbus_message_get_path () from /usr/lib/libdbus-1.so.3
#6 0x0000fffff6e137b0 in mm_filter_cb (bus=<optimized out>, m=<optimized out>, user_data=0xfffff6fec8f0) at ../spa/plugins/bluez5/modemmanager.c:575
#7 0x0000fffff7725894 in dbus_connection_dispatch () from /usr/lib/libdbus-1.so.3
#8 0x0000fffff776e610 in dispatch_cb (userdata=0xfffff6f2e990) at ../spa/plugins/support/dbus.c:77
#9 0x0000fffff7795a04 in loop_iterate (object=0xfffff7a13168, timeout=<optimized out>) at ../spa/plugins/support/loop.c:496
#10 0x0000fffff7edeac8 in wp_loop_source_dispatch (s=0xfffff7a9eb50, callback=<optimized out>, user_data=<optimized out>) at ../lib/wp/core.c:49
#11 0x0000fffff7d30300 in ?? () from /usr/lib/libglib-2.0.so.0
#12 0x0000fffff7d33a10 in ?? () from /usr/lib/libglib-2.0.so.0
#13 0x0000fffff7d3441c in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#14 0x0000aaaaaaaa1730 in main (argc=<optimized out>, argv=<optimized out>) at ../src/main.c:246