Summary: | pulseaudio crashes when bluetooth A2DP source device connects | ||
---|---|---|---|
Product: | PulseAudio | Reporter: | Alex Roman <alex.roman> |
Component: | modules | Assignee: | pulseaudio-bugs |
Status: | RESOLVED NOTOURBUG | QA Contact: | pulseaudio-bugs |
Severity: | normal | ||
Priority: | medium | CC: | alex.roman, lennart |
Version: | unspecified | ||
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
Log of pulseaudio crash
gdb output |
This has been reported also by others, but this hasn't been investigated yet. Since this appears to be a quite common problem, this should probably be regarded as a release blocker. The crash appears to be happen somewhere deep in libc when loading module-bluetooth-device. There shouldn't be anything special about loading module-bluetooth-device, but all the reports have been about that particular module anyway. Maybe module-bluetooth-discover overwrites some random memory, breaking the module loading procedure? Could you get a backtrace with gdb? Instructions: $ gdb pulseaudio [gdb starts and you get to the gdb prompt] (gdb) run -vvv [reproduce crash] (gdb) thread apply all bt Also, what is the exact version of your libc? From the logs, I see: Inconsistency detected by ld.so: dl-open.c: 666: _dl_open: Assertion `_dl_debug_initialize (0, args.nsid)->r_state == RT_CONSISTENT' failed! Is this some sort of standard distribution? Could you also provide the output of ldd /usr/lib/pulse-2.99/modules/module-bluetooth-policy.so ? JFYI, the reason I asked those questions is: https://jira.skype.com/browse/SCL-510 http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=543448 Created attachment 71423 [details]
gdb output
It appears that the process doesn't crash, but it cleanly exits... As you can see from the attachment, there was no crash and thus no core or backtrace... :(
I'm running on Arch Linux (www.archlinux.org). It's the latest version and I just set up this computer last night. Here's my version of glibc according to my distro's package manager: [alex@carpc ~]$ pacman -Q glibc glibc 2.16.0-5 And here's the output of ldd on module-bluetooth-policy.so: [alex@carpc ~]$ ldd /usr/lib/pulse-2.99/modules/module-bluetooth-policy.so linux-vdso.so.1 (0x00007fffd15ff000) libpulsecore-2.99.so => /usr/lib/libpulsecore-2.99.so (0x00007f14ba556000) libpulse.so.0 => /usr/lib/libpulse.so.0 (0x00007f14ba30c000) libpulsecommon-2.99.so => /usr/lib/pulseaudio/libpulsecommon-2.99.so (0x00007f14ba0a4000) libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f14b9e87000) libc.so.6 => /usr/lib/libc.so.6 (0x00007f14b9ae0000) libltdl.so.7 => /usr/lib/libltdl.so.7 (0x00007f14b98d6000) libsamplerate.so.0 => /usr/lib/libsamplerate.so.0 (0x00007f14b9569000) libspeexdsp.so.1 => /usr/lib/libspeexdsp.so.1 (0x00007f14b9357000) libX11-xcb.so.1 => /usr/lib/libX11-xcb.so.1 (0x00007f14b9155000) libX11.so.6 => /usr/lib/libX11.so.6 (0x00007f14b8e1b000) libsndfile.so.1 => /usr/lib/libsndfile.so.1 (0x00007f14b8bb5000) liborc-0.4.so.0 => /usr/lib/liborc-0.4.so.0 (0x00007f14b893a000) libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0x00007f14b86f3000) libtdb.so.1 => /usr/lib/libtdb.so.1 (0x00007f14b84e0000) libm.so.6 => /usr/lib/libm.so.6 (0x00007f14b81e6000) /usr/lib/ld-linux-x86-64.so.2 (0x00007f14baa17000) libjson.so.0 => /usr/lib/libjson.so.0 (0x00007f14b7fdd000) libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007f14b7dbe000) libasyncns.so.0 => /usr/lib/libasyncns.so.0 (0x00007f14b7bb8000) librt.so.1 => /usr/lib/librt.so.1 (0x00007f14b79af000) libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f14b77ab000) libFLAC.so.8 => /usr/lib/libFLAC.so.8 (0x00007f14b755f000) libvorbisenc.so.2 => /usr/lib/libvorbisenc.so.2 (0x00007f14b7090000) libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0x00007f14b6e63000) libogg.so.0 => /usr/lib/libogg.so.0 (0x00007f14b6c5c000) libXau.so.6 => /usr/lib/libXau.so.6 (0x00007f14b6a58000) libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007f14b6852000) libnsl.so.1 => /usr/lib/libnsl.so.1 (0x00007f14b6639000) libresolv.so.2 => /usr/lib/libresolv.so.2 (0x00007f14b6422000) [alex@carpc ~]$ Thanks for the output. Could you also provide the output of ldd /usr/lib32/libpulse* ? Found the problem! First of all a big thank you for the hint of using ldd. I was totally looking the wrong way at this problem. Turns out I was missing the sbc package, and module-bluetooth-device.so was referencing that library. Thanks again! You may mark this issue as resolved/closed. FYI if this ever shows up again it's most likely a missing library. Here's the output of ldd on the "culprit": [alex@carpc ~]$ ldd /usr/lib/pulse-2.99/modules/module-bluetooth-device.so linux-vdso.so.1 (0x00007fffbdbff000) libsbc.so.1 => not found libbluetooth-util.so => /usr/lib/pulse-2.99/modules/libbluetooth-util.so (0x00007f72afa0f000) libpulsecore-2.99.so => /usr/lib/libpulsecore-2.99.so (0x00007f72af77b000) libpulse.so.0 => /usr/lib/libpulse.so.0 (0x00007f72af530000) libpulsecommon-2.99.so => /usr/lib/pulseaudio/libpulsecommon-2.99.so (0x00007f72af2c8000) libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0x00007f72af082000) libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f72aee65000) libc.so.6 => /usr/lib/libc.so.6 (0x00007f72aeabe000) libltdl.so.7 => /usr/lib/libltdl.so.7 (0x00007f72ae8b4000) libsamplerate.so.0 => /usr/lib/libsamplerate.so.0 (0x00007f72ae547000) libspeexdsp.so.1 => /usr/lib/libspeexdsp.so.1 (0x00007f72ae335000) libX11-xcb.so.1 => /usr/lib/libX11-xcb.so.1 (0x00007f72ae133000) libX11.so.6 => /usr/lib/libX11.so.6 (0x00007f72addf9000) libsndfile.so.1 => /usr/lib/libsndfile.so.1 (0x00007f72adb93000) liborc-0.4.so.0 => /usr/lib/liborc-0.4.so.0 (0x00007f72ad918000) libtdb.so.1 => /usr/lib/libtdb.so.1 (0x00007f72ad704000) libm.so.6 => /usr/lib/libm.so.6 (0x00007f72ad40a000) /usr/lib/ld-linux-x86-64.so.2 (0x00007f72afe55000) libjson.so.0 => /usr/lib/libjson.so.0 (0x00007f72ad202000) libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007f72acfe2000) libasyncns.so.0 => /usr/lib/libasyncns.so.0 (0x00007f72acddc000) librt.so.1 => /usr/lib/librt.so.1 (0x00007f72acbd4000) libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f72ac9cf000) libFLAC.so.8 => /usr/lib/libFLAC.so.8 (0x00007f72ac784000) libvorbisenc.so.2 => /usr/lib/libvorbisenc.so.2 (0x00007f72ac2b5000) libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0x00007f72ac087000) libogg.so.0 => /usr/lib/libogg.so.0 (0x00007f72abe81000) libXau.so.6 => /usr/lib/libXau.so.6 (0x00007f72abc7d000) libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007f72aba76000) libnsl.so.1 => /usr/lib/libnsl.so.1 (0x00007f72ab85e000) libresolv.so.2 => /usr/lib/libresolv.so.2 (0x00007f72ab647000) So yeah, it all appears to work: after installing the sbc package I now have A2DP streaming in my car :D Excellent, glad it's working now! :) I've also pinged the Arch maintainer about this to double-check whether there's a packaging issue there. Thanks! I was going to investigate a package dependency issue and report, but I wouldn't have gotten to it until after Christmas and the sooner they know about it the better :) |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.
Created attachment 71420 [details] Log of pulseaudio crash I can reproduce this issue consistently. The setup is as follows: - This is a Car PC setup - Latest Arch Linux - Bluez 4.101-1 configured as an A2DP gateway - PulseAudio 2.99.3 When I connect my A2DP source device (smartphone) to the PC, pulseaudio crashes (or exits, I haven't been able to find a core or how to enable core dumping). I then ran pulseaudio with logging enabled: pulseaudio -vvvvvvvv --log-time=1 > pulse.log 2>&1 & I then proceeded to reproduce the problem. The log is attached. Like I said I can reproduce the problem, and I am able to build my own pulse audio and try it out. Let me know if there is any further debug info that you'd like. Thanks!