pulseaudio crash when 2 or more filter in the stream and sound sink gets removed
Summary
pulseaudio crash when 2 or more filter in the stream are inserted and sound sink then gets removed the issue is reproducible, always, leads to segmentation fault
environment
pulseaudio 14.2 and previouse LinuxMint 20 focal x64
Steps to reproduce
Load 2 filter modules
it can be 2 or more of the filter-modules, I did test module-remap-sink, module-equalizer-sink, module-ladspa-sink, module-virtual-surround-sink, same fault behaviour for each combination
pactl load-module module-remap-sink master_channel_map=front-left,front-right channel_map=front-left,front-right
pactl load-module module-remap-sink master_channel_map=front-left,front-right channel_map=front-left,front-right
$ pactl list short sinks
0 alsa_output.pci-0000_01_00.1.hdmi-stereo module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
1 alsa_output.usb-0d8c_C-Media_USB_Audio_Device-00.analog-stereo module-alsa-card.c s16le 2ch 48000Hz RUNNING
2 alsa_output.pci-0000_00_1b.0.analog-stereo module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
3 alsa_output.usb-0d8c_C-Media_USB_Audio_Device-00.analog-stereo.remapped module-remap-sink.c s16le 2ch 48000Hz SUSPENDED
4 alsa_output.usb-0d8c_C-Media_USB_Audio_Device-00.analog-stereo.remapped.2 module-remap-sink.c s16le 2ch 48000Hz SUSPENDED
$ pactl list short sink-inputs
2 1 14 protocol-native.c float32le 2ch 48000Hz
3 1 - module-remap-sink.c s16le 2ch 48000Hz
4 1 - module-remap-sink.c s16le 2ch 48000Hz
link them together
$pactl move-sink-input 2 3
$pactl move-sink-input 3 4
$pactl list short sink-inputs
2 3 14 protocol-native.c float32le 2ch 48000Hz
3 4 - module-remap-sink.c s16le 2ch 48000Hz
4 1 - module-remap-sink.c s16le 2ch 48000Hz
output: alsa_output.usb-0d8c_C-Media_USB_Audio_Device-00.analog-stereo
change card profile, which will trigger a remove of the current output sink
$pactl set-card-profile 2 output:iec958-stereo
-->pulseaudio crash
fault behaviour is always same, independent of device or reason what triggers the sink removal e.g. same fault behaviour if you unplug usb-device and for all of my devices, HDMI,build in audio and different usb devices.
pulseaudio output:
I: [pulseaudio] sink.c: Freeing sink 1 "alsa_output.usb-0d8c_C-Media_USB_Audio_Device-00.analog-stereo"
I: [pulseaudio] source.c: Freeing source 1 "alsa_output.usb-0d8c_C-Media_USB_Audio_Device-00.analog-stereo.monitor"
D: [pulseaudio] card.c: alsa_card.usb-0d8c_C-Media_USB_Audio_Device-00: active_profile: output:analog-stereo -> output:iec958-stereo
I: [pulseaudio] module-card-restore.c: Storing card profile for card alsa_card.usb-0d8c_C-Media_USB_Audio_Device-00.
D: [pulseaudio] card.c: alsa_card.usb-0d8c_C-Media_USB_Audio_Device-00: preferred_output_port: (unset) -> iec958-stereo-output
D: [pulseaudio] protocol-dbus.c: Interface org.PulseAudio.Core1.Client removed from object /org/pulseaudio/core1/client25
I: [pulseaudio] client.c: Freed 25 "pactl"
I: [pulseaudio] protocol-native.c: Connection died.
I: [pulseaudio] client.c: Created 26 "Native client (UNIX socket client)"
D: [pulseaudio] protocol-dbus.c: Interface org.PulseAudio.Core1.Client added for object /org/pulseaudio/core1/client26
D: [pulseaudio] module-udev-detect.c: /dev/snd/controlC3 is accessible: yes
D: [pulseaudio] module-udev-detect.c: Resuming all sinks and sources of card alsa_card.usb-0d8c_C-Media_USB_Audio_Device-00.
D: [pulseaudio] protocol-native.c: Protocol version: remote 34, local 34
I: [pulseaudio] protocol-native.c: Got credentials: uid=1000 gid=1000 success=1
D: [pulseaudio] protocol-native.c: SHM possible: yes
D: [pulseaudio] protocol-native.c: Negotiated SHM: yes
D: [pulseaudio] protocol-native.c: Memfd possible: yes
D: [pulseaudio] protocol-native.c: Negotiated SHM type: shared memfd
D: [pulseaudio] memblock.c: Using shared memfd memory pool with 1024 slots of size 64,0 KiB each, total size is 64,0 MiB, maximum usable slot size is 65472
D: [pulseaudio] srbchannel.c: SHM block is 65472 bytes, ringbuffer capacity is 2 * 32712 bytes
D: [pulseaudio] protocol-native.c: Enabling srbchannel...
Speicherzugriffsfehler (Speicherabzug geschrieben)
What is the current bug behavior?
pulseaudio crash