Bug 1731966

Summary: Crash when changing bluetooth card profile
Product: Red Hat Enterprise Linux 8 Reporter: Jiri Koten <jkoten>
Component: pulseaudioAssignee: Wim Taymans <wtaymans>
Status: ASSIGNED --- QA Contact: Desktop QE <desktop-qa-list>
Severity: medium Docs Contact:
Priority: medium    
Version: 8.1CC: csoriano, wtaymans
Target Milestone: rc   
Target Release: 8.3   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
backtrace none

Description Jiri Koten 2019-07-22 12:44:41 UTC
Description of problem:
Pulseaudio struggles to properly activate my bluetooth headset (MDR-1000X) after it connects. I have to use bluetoothctl cmd to reconnect the headset, after that the sound works fine.

When I try to set the card profile manually when the headset is paired, the pulseaudio crashed. 

Version-Release number of selected component (if applicable):
pulseaudio-11.1-22.el8
bluez-5.50-1.el8
kernel-4.18.0-118.el8

How reproducible:
most of the times

Steps to Reproduce:
1. Pair the MDR-1000X
2. $ pactl set-card-profile bluez_card.10_4F_A8_AE_2C_13 a2dp_sink
3.

Actual results:
Failure: Input/Output error
pulseaudio crashed

Expected results:
No crash, profile is activated

Additional info:
This is hw specific as I don't have such issue with other bluetooth headsets.

Comment 1 Jiri Koten 2019-07-22 12:47:47 UTC
           PID: 2154 (pulseaudio)
           UID: 1001 (test)
           GID: 1001 (test)
        Signal: 6 (ABRT)
     Timestamp: Mon 2019-07-22 11:47:24 CEST (2h 57min ago)
  Command Line: /usr/bin/pulseaudio --daemonize=no
    Executable: /usr/bin/pulseaudio
 Control Group: /user.slice/user-1001.slice/user@1001.service/pulseaudio.service
          Unit: user@1001.service
     User Unit: pulseaudio.service
         Slice: user-1001.slice
     Owner UID: 1001 (test)
       Boot ID: d13e73a5df3b4fb98dfec6666f5b24e8
    Machine ID: 58b8b4467d4a450caa4aacdd5d400d2b
      Hostname: X1
       Storage: /var/lib/systemd/coredump/core.pulseaudio.1001.d13e73a5df3b4fb98dfec6666f5b24e8.2154.1563788844000000.lz4
       Message: Process 2154 (pulseaudio) of user 1001 dumped core.
                
                Stack trace of thread 2154:
                #0  0x00007f7e2dd6d8af raise (libc.so.6)
                #1  0x00007f7e2dd57cc5 abort (libc.so.6)
                #2  0x00007f7e1038ac05 transport_state_changed_cb (module-bluez5-device.so)
                #3  0x00007f7e3117626b pa_hook_fire (libpulsecore-11.1.so)
                #4  0x00007f7e11fe1307 pa_bluetooth_transport_set_state (libbluez5-util.so)
                #5  0x00007f7e11fe1584 pa_bluetooth_transport_unlink (libbluez5-util.so)
                #6  0x00007f7e11fe6ef2 rfcomm_io_callback (libbluez5-util.so)
                #7  0x00007f7e30f1ad68 pa_mainloop_dispatch (libpulse.so.0)
                #8  0x00007f7e30f1b040 pa_mainloop_iterate (libpulse.so.0)
                #9  0x00007f7e30f1b0e0 pa_mainloop_run (libpulse.so.0)
                #10 0x0000559a2c1c2cbc main (pulseaudio)
                #11 0x00007f7e2dd59843 __libc_start_main (libc.so.6)
                #12 0x0000559a2c1c3b3e _start (pulseaudio)
                
                Stack trace of thread 11002:
                #0  0x00007f7e2de272d6 ppoll (libc.so.6)
                #1  0x00007f7e311819df pa_rtpoll_run (libpulsecore-11.1.so)
                #2  0x00007f7e18c3ee22 thread_func (libalsa-util.so)
                #3  0x00007f7e3061d84c internal_thread_func (libpulsecommon-11.1.so)
                #4  0x00007f7e2e8902de start_thread (libpthread.so.0)
                #5  0x00007f7e2de32463 __clone (libc.so.6)
                
                Stack trace of thread 2165:
                #0  0x00007f7e2de272d6 ppoll (libc.so.6)
                #1  0x00007f7e311819df pa_rtpoll_run (libpulsecore-11.1.so)
                #2  0x00007f7e18c387de thread_func (libalsa-util.so)
                #3  0x00007f7e3061d84c internal_thread_func (libpulsecommon-11.1.so)
                #4  0x00007f7e2e8902de start_thread (libpthread.so.0)
                #5  0x00007f7e2de32463 __clone (libc.so.6)
                
                Stack trace of thread 10985:
                #0  0x00007f7e2de272d6 ppoll (libc.so.6)
                #1  0x00007f7e311819df pa_rtpoll_run (libpulsecore-11.1.so)
                #2  0x00007f7e18c387de thread_func (libalsa-util.so)
                #3  0x00007f7e3061d84c internal_thread_func (libpulsecommon-11.1.so)
                #4  0x00007f7e2e8902de start_thread (libpthread.so.0)
                #5  0x00007f7e2de32463 __clone (libc.so.6)
                
                Stack trace of thread 2169:
                #0  0x00007f7e2de272d6 ppoll (libc.so.6)
                #1  0x00007f7e311819df pa_rtpoll_run (libpulsecore-11.1.so)
                #2  0x00007f7e18c3ee22 thread_func (libalsa-util.so)
                #3  0x00007f7e3061d84c internal_thread_func (libpulsecommon-11.1.so)
                #4  0x00007f7e2e8902de start_thread (libpthread.so.0)
                #5  0x00007f7e2de32463 __clone (libc.so.6)

Comment 2 Jiri Koten 2019-07-22 12:57:07 UTC
Created attachment 1592585 [details]
backtrace