Date: Tue, 02 Nov 2021 18:44:08 +0000 From: bugzilla-noreply@freebsd.org To: ports-bugs@FreeBSD.org Subject: [Bug 259621] multimedia/pipewire: SIGSEGV due to ambiguous pw_init Message-ID: <bug-259621-7788@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D259621 Bug ID: 259621 Summary: multimedia/pipewire: SIGSEGV due to ambiguous pw_init Product: Ports & Packages Version: Latest Hardware: amd64 OS: Any Status: New Severity: Affects Some People Priority: --- Component: Individual Port(s) Assignee: arrowd@FreeBSD.org Reporter: protasenko@gmail.com Flags: maintainer-feedback?(arrowd@FreeBSD.org) Assignee: arrowd@FreeBSD.org Segfaults on startup in various Gnome3 programs, e.g. cheese, some areas of gnome-control-center (e.g. Users). The problem stems from pw_init() ambiguously exported from both libpipewire= .so and libutil.so. The libgstpipewire.so's plugin_init() calls pw_init() to initialize libpipewire. Since libgstpipewire.so links to both libpipewire.so and libutil.so, on my system it happens to call pw_init exported from libutil.so instead of the libpipewire.so's one. Both exports take two pointers as parameters and the SIGSEGV occurs later on when effectively uninitialized libpipewire starts being used. The backtrace when SIGSEGV actually occurs looks like: Thread 1 received signal SIGSEGV, Segmentation fault. Address not mapped to object. 0x0000000801477aa6 in strspn () from /lib/libc.so.7 (gdb) bt #0 0x0000000801477aa6 in strspn () at /lib/libc.so.7 #1 0x000000081a612569 in pw_split_walk () at /usr/local/lib/libpipewire-0.3.so.0 #2 0x000000081a5f7c51 in pw_load_spa_handle () at /usr/local/lib/libpipewire-0.3.so.0 #3 0x000000081a5e9147 in pw_loop_new () at /usr/local/lib/libpipewire-0.3.= so.0 ... --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-259621-7788>