Bug 98597

Summary: Segmentation fault when volume is set to zero
Product: PulseAudio Reporter: stelf
Component: coreAssignee: pulseaudio-bugs
Status: RESOLVED DUPLICATE QA Contact: pulseaudio-bugs
Severity: normal    
Priority: medium CC: lennart
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 96750    
Attachments: end of output from pulseaudio -vvvvv

Description stelf 2016-11-05 08:47:38 UTC
Created attachment 127782 [details]
end of output from pulseaudio -vvvvv

When I turn down the volume in VLC or Audacious to zero, pulseaudio crashes with a segmentation fault.

since I am running gentoo:

$ emerge -pv pulseaudio

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] media-sound/pulseaudio-9.0::gentoo  USE="X alsa alsa-plugin asyncns caps dbus equalizer gdbm glib gtk ipv6 orc ssl systemd tcpd udev webrtc-aec -bluetooth -doc -gnome -jack (-libressl) -libsamplerate -lirc -native-headset (-neon) -ofono-headset (-oss) -qt4 -realtime (-selinux) -sox (-system-wide) {-test} -xen -zeroconf" ABI_X86="32 (64) (-x32)" 0 KiB

Total: 1 package (1 reinstall), Size of downloads: 0 KiB
Comment 1 Tanu Kaskinen 2016-11-05 09:25:46 UTC
I can't reproduce this, so we need a backtrace. Here are instructions:

Run "gdb --args pulseaudio -vv".

A command prompt appears, enter "run".

Make pulseaudio crash.

In the gdb prompt, enter "thread apply all bt full".

Copy the output and attach it to this bug.

"quit" in the gdb prompt will exit gdb.

Since this is a crash bug, I'm marking this as a release blocker.
Comment 2 stelf 2016-11-05 13:59:01 UTC
I just spend a few hours adding debugging symbols with

CFLAGS="${CFLAGS} -ggdb" FEATURES="${FEATURES} splitdebug installsources" USE="debug" nice ionice -c 3 emerge -vuND pulseaudio

now I also cant reproduce…

I will revert and report back.
Comment 3 stelf 2016-11-05 18:11:31 UTC
Yup, seems like a Heisenbug

for the record, here is what I get:

(gdb) thread apply all bt full

Thread 2 (Thread 0x7fffed2f4700 (LWP 7983)):
#0  0x00007fffed34466c in snd_pcm_area_silence () from /usr/lib64/libasound.so.2
No symbol table info available.
#1  0x00007fffed344834 in snd_pcm_areas_silence () from /usr/lib64/libasound.so.2
No symbol table info available.
#2  0x00007fffed386482 in ?? () from /usr/lib64/libasound.so.2
No symbol table info available.
#3  0x00007fffed354124 in ?? () from /usr/lib64/libasound.so.2
No symbol table info available.
#4  0x00007fffed5fadbb in ?? () from /usr/lib64/pulse-9.0/modules/libalsa-util.so
No symbol table info available.
#5  0x00007ffff76a5e1f in ?? () from /usr/lib64/pulseaudio/libpulsecommon-9.0.so
No symbol table info available.
#6  0x00007ffff6dd642c in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#7  0x00007ffff6918b8d in clone () from /lib64/libc.so.6
No symbol table info available.

Thread 1 (Thread 0x7ffff7f01800 (LWP 7979)):
#0  0x00007ffff6dde0b7 in do_futex_wait.constprop () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x00007ffff6dde164 in __new_sem_wait_slow.constprop.0 () from /lib64/libpthread.so.0
No symbol table info available.
#2  0x00007ffff76a6062 in pa_semaphore_wait () from /usr/lib64/pulseaudio/libpulsecommon-9.0.so
No symbol table info available.
#3  0x00007ffff7b40d03 in pa_asyncmsgq_send () from /usr/lib64/pulseaudio/libpulsecore-9.0.so
No symbol table info available.
#4  0x00007ffff7b7dbf5 in pa_sink_get_latency () from /usr/lib64/pulseaudio/libpulsecore-9.0.so
No symbol table info available.
#5  0x00007fffee45877e in ?? () from /usr/lib64/pulse-9.0/modules/libprotocol-native.so
No symbol table info available.
#6  0x00007fffee460f4a in ?? () from /usr/lib64/pulse-9.0/modules/libprotocol-native.so
No symbol table info available.
#7  0x00007ffff768e555 in pa_pdispatch_run () from /usr/lib64/pulseaudio/libpulsecommon-9.0.so
No symbol table info available.
#8  0x00007fffee4660c5 in ?? () from /usr/lib64/pulse-9.0/modules/libprotocol-native.so
No symbol table info available.
#9  0x00007ffff769153f in ?? () from /usr/lib64/pulseaudio/libpulsecommon-9.0.so
No symbol table info available.
#10 0x00007ffff769411b in ?? () from /usr/lib64/pulseaudio/libpulsecommon-9.0.so
No symbol table info available.
#11 0x00007ffff78faa1d in pa_mainloop_dispatch () from /usr/lib64/libpulse.so.0
No symbol table info available.
#12 0x00007ffff78fac8c in pa_mainloop_iterate () from /usr/lib64/libpulse.so.0
No symbol table info available.
#13 0x00007ffff78fad30 in pa_mainloop_run () from /usr/lib64/libpulse.so.0
No symbol table info available.
#14 0x0000000000407160 in main ()
No symbol table info available.
(gdb) quit
Comment 4 Tanu Kaskinen 2016-11-05 21:54:27 UTC
This is likely the same problem as in bug 51060. I'm marking this as a duplicate.

*** This bug has been marked as a duplicate of bug 51060 ***

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.