Ticket #540 (closed defect: fixed)

Opened 3 years ago

Last modified 2 years ago

module-ladspa-sink on 0.9.15 dies

Reported by: nevion Owned by: lennart
Milestone: 0.9.16 Component: daemon
Keywords: Cc:

Description

using 0.9.15 stable as released yesterday. my packages are available here: http://download.opensuse.org/repositories/home:/jenewton/opensuse_11.1/x86_64/ (x86_64 only).

I'm using the default config on a 6 channel setup on opensuse 11.1. When I put the following in default.pa

load-module module-ladspa-sink sink_name=ladspa_out master=alsa_output.pci_8086_3a3e_sound_card_0 plugin=mbeq_1197 label=mbeq control=-1000,-10,0,0,0,0,0,0,0,0,0,0,0,0,0

to filter out the bass so my subwoofer doesn't wake the neighbors this now causes:

E: sink-input.c: Assertion 'PA_SINK_INPUT_IS_LINKED(i->thread_info.state)' failed at pulsecore/sink-input.c:807, function pa_sink_input_update_max_request(). Aborting.

Removing the line fixes this but obviously at the cost of the ladspa plugin not being loaded. This is recent breakage as I had git from 20090406 and it worked fine in this respect.

Attachments

verbosedie.txt (55.4 kB) - added by nevion 3 years ago.
pulseaudio -vvvvv of death

Change History

Changed 3 years ago by lennart

Please get me a backtrace as described here:

http://pulseaudio.org/wiki/Community#BugsPatchesTranslations

Changed 3 years ago by nevion

pulseaudio -vvvvv of death

Changed 3 years ago by nevion

#0  0x00007ffff40b4645 in raise () from /lib64/libc.so.6                                                             
#1  0x00007ffff40b5c33 in abort () from /lib64/libc.so.6                                                             
#2  0x00007ffff7bab748 in pa_sink_input_update_max_request () from /usr/lib64/libpulsecore-0.9.15.so                 
#3  0x00007ffff7bac96f in pa_sink_set_max_request_within_thread () from /usr/lib64/libpulsecore-0.9.15.so            
#4  0x00007fffee9d7ef0 in update_sw_params () from /usr/lib64/pulse-0.9/modules/libalsa-util.so                      
#5  0x00007fffee9da938 in sink_update_requested_latency_cb () from /usr/lib64/pulse-0.9/modules/libalsa-util.so      
#6  0x00007ffff7bb33b1 in pa_sink_invalidate_requested_latency () from /usr/lib64/libpulsecore-0.9.15.so             
#7  0x00007ffff7bab3b1 in pa_sink_input_set_requested_latency_within_thread () from /usr/lib64/libpulsecore-0.9.15.so
#8  0x00007ffff7bb33b1 in pa_sink_invalidate_requested_latency () from /usr/lib64/libpulsecore-0.9.15.so             
#9  0x00007ffff7bb34f5 in pa_sink_set_latency_range_within_thread () from /usr/lib64/libpulsecore-0.9.15.so          
#10 0x00007ffff7bb3c78 in pa_sink_process_msg () from /usr/lib64/libpulsecore-0.9.15.so                              
#11 0x00007fffee9dab42 in sink_process_msg () from /usr/lib64/pulse-0.9/modules/libalsa-util.so                      
#12 0x00007ffff7b9aa94 in asyncmsgq_read_work () from /usr/lib64/libpulsecore-0.9.15.so                              
#13 0x00007ffff7b9bcef in pa_rtpoll_run () from /usr/lib64/libpulsecore-0.9.15.so                                    
#14 0x00007fffee9db445 in thread_func () from /usr/lib64/pulse-0.9/modules/libalsa-util.so                           
#15 0x00007ffff771a860 in internal_thread_func () from /usr/lib64/libpulsecommon-0.9.15.so                           
#16 0x00007ffff43e2070 in start_thread () from /lib64/libpthread.so.0                                                
#17 0x00007ffff415510d in clone () from /lib64/libc.so.6                                                             
#18 0x0000000000000000 in ?? ()                                                                                      
(gdb) thread apply all
Please specify a command following the thread ID list
(gdb) thread apply all bt full

Thread 3 (Thread 0x7fffedef7950 (LWP 18705)):
#0  0x00007ffff414c5d5 in ppoll () from /lib64/libc.so.6
No symbol table info available.
#1  0x00007ffff7b9bdf0 in pa_rtpoll_run () from /usr/lib64/libpulsecore-0.9.15.so
No symbol table info available.
#2  0x00007fffee9e000a in thread_func () from /usr/lib64/pulse-0.9/modules/libalsa-util.so
No symbol table info available.
#3  0x00007ffff771a860 in internal_thread_func () from /usr/lib64/libpulsecommon-0.9.15.so
No symbol table info available.
#4  0x00007ffff43e2070 in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#5  0x00007ffff415510d in clone () from /lib64/libc.so.6
No symbol table info available.
#6  0x0000000000000000 in ?? ()
No symbol table info available.

Thread 2 (Thread 0x7fffee6f8950 (LWP 18704)):
#0  0x00007ffff40b4645 in raise () from /lib64/libc.so.6
No symbol table info available.
#1  0x00007ffff40b5c33 in abort () from /lib64/libc.so.6
No symbol table info available.
#2  0x00007ffff7bab748 in pa_sink_input_update_max_request () from /usr/lib64/libpulsecore-0.9.15.so
No symbol table info available.
#3  0x00007ffff7bac96f in pa_sink_set_max_request_within_thread () from /usr/lib64/libpulsecore-0.9.15.so
No symbol table info available.
#4  0x00007fffee9d7ef0 in update_sw_params () from /usr/lib64/pulse-0.9/modules/libalsa-util.so
No symbol table info available.
#5  0x00007fffee9da938 in sink_update_requested_latency_cb () from /usr/lib64/pulse-0.9/modules/libalsa-util.so
No symbol table info available.
#6  0x00007ffff7bb33b1 in pa_sink_invalidate_requested_latency () from /usr/lib64/libpulsecore-0.9.15.so

Changed 3 years ago by lennart

Hmm, could you please redo the backtrace with debugging symbols installed as suggested in the link I provided? Thanks!

Changed 3 years ago by nevion

Thread 3 (Thread 0x7fffedef7950 (LWP 28397)):
#0  0x00007ffff414c5d5 in ppoll () from /lib64/libc.so.6
No symbol table info available.                         
#1  0x00007ffff7b9bdf0 in pa_rtpoll_run (p=0x69c460, wait=true) at pulsecore/rtpoll.c:413
        ts = {tv_sec = 0, tv_nsec = 351493000}                                           
        i = <value optimized out>                                                        
        r = <value optimized out>                                                        
        timeout = {tv_sec = 0, tv_usec = 351493}                                         
        __func__ = "pa_rtpoll_run"                                                       
        __PRETTY_FUNCTION__ = "pa_rtpoll_run"                                            
#2  0x00007fffee9e000a in thread_func (userdata=<value optimized out>) at modules/alsa/alsa-source.c:1206
        ret = <value optimized out>                                                                      
        u = (struct userdata *) 0x69f340                                                                 
        revents = 0                                                                                      
        __func__ = "thread_func"                                                                         
        __PRETTY_FUNCTION__ = "thread_func"                                                              
#3  0x00007ffff771a860 in internal_thread_func (userdata=0x6adf20) at pulsecore/thread-posix.c:72        
        __func__ = "internal_thread_func"                                                                
        __PRETTY_FUNCTION__ = "internal_thread_func"                                                     
#4  0x00007ffff43e2070 in start_thread () from /lib64/libpthread.so.0                                    
No symbol table info available.                                                                          
#5  0x00007ffff415510d in clone () from /lib64/libc.so.6                                                 
No symbol table info available.                                                                          
#6  0x0000000000000000 in ?? ()                                                                          
No symbol table info available.                                                                          

Thread 2 (Thread 0x7fffee6f8950 (LWP 28396)):
#0  0x00007ffff40b4645 in raise () from /lib64/libc.so.6
No symbol table info available.                         
#1  0x00007ffff40b5c33 in abort () from /lib64/libc.so.6
---Type <return> to continue, or q <return> to quit---  
No symbol table info available.                         
#2  0x00007ffff7bab748 in pa_sink_input_update_max_request (i=0x739020, nbytes=65280) at pulsecore/sink-input.h:220
        __func__ = "pa_sink_input_update_max_request"                                                              
        __PRETTY_FUNCTION__ = "pa_sink_input_update_max_request"                                                   
#3  0x00007ffff7bac96f in pa_sink_set_max_request_within_thread (s=0x69c820, max_request=<value optimized out>)    
    at pulsecore/sink.c:1932                                                                                       
        state = (void *) 0xffffffffffffffff                                                                        
#4  0x00007fffee9d7ef0 in update_sw_params (u=0x68fd70) at modules/alsa/alsa-sink.c:771                            
        avail_min = <value optimized out>                                                                          
        err = 0                                                                                                    
        __func__ = "update_sw_params"                                                                              
        __PRETTY_FUNCTION__ = "update_sw_params"                                                                   
#5  0x00007fffee9da938 in sink_update_requested_latency_cb (s=0x69c820) at modules/alsa/alsa-sink.c:1184           
        u = (struct userdata *) 0x68fd70                                                                           
        before = 12                                                                                                
        __func__ = "sink_update_requested_latency_cb"                                                              
        __PRETTY_FUNCTION__ = "sink_update_requested_latency_cb"                                                   
#6  0x00007ffff7bb33b1 in pa_sink_invalidate_requested_latency (s=0x69c820) at pulsecore/sink.c:1961               
        state = (void *) 0x0                                                                                       
#7  0x00007ffff7bab3b1 in pa_sink_input_set_requested_latency_within_thread (i=0x739020, usec=18446744073709551615)
    at pulsecore/sink-input.c:825                                                                                  
No locals.                                                                                                         
#8  0x00007ffff7bb33b1 in pa_sink_invalidate_requested_latency (s=0x70d130) at pulsecore/sink.c:1961               
        state = (void *) 0x0                                                                                       
#9  0x00007ffff7bb34f5 in pa_sink_set_latency_range_within_thread (s=0x70d130, min_latency=500, max_latency=123356)
    at pulsecore/sink.c:2048                                                                                       
        state = (void *) 0xffffffffffffffff                                                                        
        __func__ = "pa_sink_set_latency_range_within_thread"                                                       
        __PRETTY_FUNCTION__ = "pa_sink_set_latency_range_within_thread"                                            
#10 0x00007ffff7bb3c78 in pa_sink_process_msg (o=0x69c820, code=<value optimized out>, userdata=0x739020, offset=0, 
    chunk=<value optimized out>) at pulsecore/sink.c:1462                                                           
---Type <return> to continue, or q <return> to quit---                                                              
        i = (pa_sink_input *) 0x739020                                                                              
        __func__ = "pa_sink_process_msg"                                                                            
        __PRETTY_FUNCTION__ = "pa_sink_process_msg"                                                                 
#11 0x00007fffee9dab42 in sink_process_msg (o=0x69c820, code=0, data=0x739020, offset=0, chunk=0x7fffee6f7e70)      
    at modules/alsa/alsa-sink.c:902                                                                                 
        u = (struct userdata *) 0x68fd70                                                                            
        __func__ = "sink_process_msg"                                                                               
        __PRETTY_FUNCTION__ = "sink_process_msg"                                                                    
#12 0x00007ffff7b9aa94 in asyncmsgq_read_work (i=0x6910c0) at pulsecore/rtpoll.c:730                                
        ret = <value optimized out>                                                                                 
        object = (pa_msgobject *) 0x69c820                                                                          
        code = 0                                                                                                    
        data = (void *) 0x739020                                                                                    
        chunk = {memblock = 0x0, index = 0, length = 0}                                                             
        offset = 0                                                                                                  
        __func__ = "asyncmsgq_read_work"                                                                            
        __PRETTY_FUNCTION__ = "asyncmsgq_read_work"                                                                 
#13 0x00007ffff7b9bcef in pa_rtpoll_run (p=0x68eee0, wait=true) at pulsecore/rtpoll.c:341                           
        k = <value optimized out>                                                                                   
        i = (pa_rtpoll_item *) 0x6910c0                                                                             
        r = <value optimized out>                                                                                   
        timeout = {tv_sec = 6876896, tv_usec = 140737349532467}                                                     
        __func__ = "pa_rtpoll_run"                                                                                  
        __PRETTY_FUNCTION__ = "pa_rtpoll_run"                                                                       
#14 0x00007fffee9db445 in thread_func (userdata=<value optimized out>) at modules/alsa/alsa-sink.c:1347             
        ret = 0                                                                                                     
        u = (struct userdata *) 0x68fd70                                                                            
        revents = 0                                                                                                 
        __func__ = "thread_func"                                                                                    
        __PRETTY_FUNCTION__ = "thread_func"                                                                         
#15 0x00007ffff771a860 in internal_thread_func (userdata=0x695450) at pulsecore/thread-posix.c:72                   
---Type <return> to continue, or q <return> to quit---                                                              
        __func__ = "internal_thread_func"                                                                           
        __PRETTY_FUNCTION__ = "internal_thread_func"                                                                
#16 0x00007ffff43e2070 in start_thread () from /lib64/libpthread.so.0                                               
No symbol table info available.                                                                                     
#17 0x00007ffff415510d in clone () from /lib64/libc.so.6                                                            
No symbol table info available.                                                                                     
#18 0x0000000000000000 in ?? ()                                                                                     
No symbol table info available.                                                                                     

Thread 1 (Thread 0x7ffff7fc47d0 (LWP 28393)):
#0  0x00007ffff43e7c71 in sem_wait () from /lib64/libpthread.so.0
No symbol table info available.                                  
#1  0x00007ffff771aa18 in pa_semaphore_wait (s=0x69cc60) at pulsecore/semaphore-posix.c:63
        ret = <value optimized out>                                                       
        __func__ = "pa_semaphore_wait"                                                    
        __PRETTY_FUNCTION__ = "pa_semaphore_wait"                                         
#2  0x00007ffff7b7d477 in pa_asyncmsgq_send (a=0x658180, object=<value optimized out>, code=<value optimized out>, 
    userdata=<value optimized out>, offset=<value optimized out>, chunk=<value optimized out>)                     
    at pulsecore/asyncmsgq.c:167                                                                                   
        i = {code = 0, object = 0x69c820, userdata = 0x739020, free_cb = 0, offset = 0, memchunk = {memblock = 0x0, 
    index = 0, length = 0}, semaphore = 0x69cc60, ret = -1}                                                         
        __func__ = "pa_asyncmsgq_send"                                                                              
        __PRETTY_FUNCTION__ = "pa_asyncmsgq_send"                                                                   
#3  0x00007ffff7baa10b in pa_sink_input_put (i=0x739020) at pulsecore/sink-input.c:530                              
        state = <value optimized out>                                                                               
        __func__ = "pa_sink_input_put"                                                                              
        __PRETTY_FUNCTION__ = "pa_sink_input_put"                                                                   
#4  0x00007fffebc9ec5b in module_ladspa_sink_LTX_pa__init (m=0x6c05f0) at modules/module-ladspa-sink.c:754          
        ss = {format = PA_SAMPLE_FLOAT32LE, rate = 44100, channels = 6 '\006'}                                      
        map = {channels = 6 '\006', map = {PA_CHANNEL_POSITION_LEFT, PA_CHANNEL_POSITION_RIGHT,                     
    PA_CHANNEL_POSITION_REAR_LEFT, PA_CHANNEL_POSITION_REAR_RIGHT, PA_CHANNEL_POSITION_CENTER,                      
---Type <return> to continue, or q <return> to quit---                                                              
    PA_CHANNEL_POSITION_LFE, PA_CHANNEL_POSITION_MONO <repeats 26 times>}}                                          
        ma = (pa_modargs *) 0x6c16a0                                                                                
        z = <value optimized out>                                                                                   
        master = (pa_sink *) 0x69c820                                                                               
        sink_input_data = {proplist = 0x7361c0, driver = 0x7fffebca080e "modules/module-ladspa-sink.c",             
  module = 0x6c05f0, client = 0x0, sink = 0x69c820, resample_method = 12, sync_base = 0x0, sample_spec = {          
    format = PA_SAMPLE_FLOAT32LE, rate = 44100, channels = 6 '\006'}, channel_map = {channels = 6 '\006', map = {   
      PA_CHANNEL_POSITION_LEFT, PA_CHANNEL_POSITION_RIGHT, PA_CHANNEL_POSITION_REAR_LEFT,                           
      PA_CHANNEL_POSITION_REAR_RIGHT, PA_CHANNEL_POSITION_CENTER, PA_CHANNEL_POSITION_LFE,                          
      PA_CHANNEL_POSITION_MONO <repeats 26 times>}}, volume = {channels = 6 '\006', values = {65536, 65536, 65536,  
      65536, 65536, 65536, 0 <repeats 26 times>}}, volume_factor = {channels = 6 '\006', values = {65536, 65536,    
      65536, 65536, 65536, 65536, 0 <repeats 26 times>}}, muted = false, sample_spec_is_set = true,                 
  channel_map_is_set = true, volume_is_set = false, volume_factor_is_set = false, muted_is_set = false,             
  volume_is_absolute = false, save_sink = false, save_volume = false, save_muted = false}                           
        sink_data = {name = 0x6f1970 "\020\027o", proplist = 0x709c40,                                              
  driver = 0x7fffebca080e "modules/module-ladspa-sink.c", module = 0x6c05f0, card = 0x0, sample_spec = {            
    format = PA_SAMPLE_FLOAT32LE, rate = 44100, channels = 6 '\006'}, channel_map = {channels = 6 '\006', map = {   
      PA_CHANNEL_POSITION_LEFT, PA_CHANNEL_POSITION_RIGHT, PA_CHANNEL_POSITION_REAR_LEFT,                           
      PA_CHANNEL_POSITION_REAR_RIGHT, PA_CHANNEL_POSITION_CENTER, PA_CHANNEL_POSITION_LFE,                          
      PA_CHANNEL_POSITION_MONO <repeats 26 times>}}, volume = {channels = 6 '\006', values = {65536, 65536, 65536,  
      65536, 65536, 65536, 0 <repeats 26 times>}}, muted = false, sample_spec_is_set = true,                        
  channel_map_is_set = true, volume_is_set = true, muted_is_set = true, namereg_fail = false}                       
        plugin = 0x6c1ad0 "mbeq_1197"                                                                               
        label = 0x6c1b70 "mbeq"                                                                                     
        descriptor_func = <value optimized out>                                                                     
        e = <value optimized out>                                                                                   
        cdata = 0x6c1c10 "-1000,-10,0,0,0,0,0,0,0,0,0,0,0,0,0"                                                      
        d = (const LADSPA_Descriptor *) 0x6c2dd0                                                                    
        input_port = 18                                                                                             
        output_port = <value optimized out>                                                                         
        p = 18                                                                                                      
---Type <return> to continue, or q <return> to quit---                                                              
        j = <value optimized out>                                                                                   
        n_control = 15                                                                                              
        c = 7085296                                                                                                 
        use_default = (pa_bool_t *) 0x6e9fb0                                                                        
        __func__ = "module_ladspa_sink_LTX_pa__init"                                                                
        __PRETTY_FUNCTION__ = "module_ladspa_sink_LTX_pa__init"                                                     
#5  0x00007ffff7b931d8 in pa_module_load (c=0x61c1b0, name=0x631010 "module-ladspa-sink",                           
    argument=0x651990 "sink_name=ladspa_out master=alsa_output.pci_8086_3a3e_sound_card_0 plugin=mbeq_1197 label=mbeq control=-1000,-10,0,0,0,0,0,0,0,0,0,0,0,0,0") at pulsecore/module.c:103                                                   
        m = (pa_module *) 0x6c05f0                                                                                      
        mi = <value optimized out>                                                                                      
        __func__ = "pa_module_load"                                                                                     
        __PRETTY_FUNCTION__ = "pa_module_load"                                                                          
#6  0x00007ffff7b85b9a in pa_cli_command_load (c=0x61c1b0, t=0x619860, buf=0x619ad0, fail=<value optimized out>)        
    at pulsecore/cli-command.c:422                                                                                      
        name = <value optimized out>                                                                                    
        __func__ = "pa_cli_command_load"                                                                                
        __PRETTY_FUNCTION__ = "pa_cli_command_load"                                                                     
#7  0x00007ffff7b7f0b4 in pa_cli_command_execute_line_stateful (c=0x61c1b0, s=<value optimized out>, buf=0x619ad0,      
    fail=0x618af5, ifstate=<value optimized out>) at pulsecore/cli-command.c:1674                                       
        ret = <value optimized out>                                                                                     
        t = <value optimized out>                                                                                       
        command = (const struct command *) 0x7ffff7ddd240                                                               
        cs = 0x7fffffffd770 "load-module module-ladspa-sink sink_name=ladspa_out master=alsa_output.pci_8086_3a3e_sound_card_0 plugin=mbeq_1197 label=mbeq control=-1000,-10,0,0,0,0,0,0,0,0,0,0,0,0,0"                                         
        __func__ = "pa_cli_command_execute_line_stateful"                                                               
        __PRETTY_FUNCTION__ = "pa_cli_command_execute_line_stateful"                                                    
#8  0x00007ffff7b7f781 in pa_cli_command_execute_file_stream (c=0x61c1b0, f=0x6216a0, buf=0x619ad0, fail=0x618af5)      
    at pulsecore/cli-command.c:1714                                                                                     
        line = "load-module module-ladspa-sink sink_name=ladspa_out master=alsa_output.pci_8086_3a3e_sound_card_0 plugin=mbeq_1197 label=mbeq control=-1000,-10,0,0,0,0,0,0,0,0,0,0,0,0,0\000\0000,0,0,0,0,0,1,0\000\000\000621622,-0.2"...
---Type <return> to continue, or q <return> to quit---
        ifstate = -1
        ret = <value optimized out>
        _fail = true
        __func__ = "pa_cli_command_execute_file_stream"
        __PRETTY_FUNCTION__ = "pa_cli_command_execute_file_stream"
#9  0x000000000040b953 in main (argc=1, argv=<value optimized out>) at daemon/main.c:1013
        f = <value optimized out>
        c = (pa_core *) 0x61c1b0
        buf = (pa_strbuf *) 0x619ad0
        conf = (pa_daemon_conf *) 0x618af0
        mainloop = (pa_mainloop *) 0x619b20
        s = <value optimized out>
        r = <value optimized out>
        retval = 1
        d = 1
        suid_root = <value optimized out>
        real_root = <value optimized out>
        valid_pid_file = true
        gid = 4294967295
        ltdl_init = <value optimized out>
        passed_fd = <value optimized out>
        e = <value optimized out>
        daemon_pipe = {-1, -1}
        autospawn_fd = -1
        autospawn_locked = false
        dbus = <value optimized out>
        __func__ = "main"
        __PRETTY_FUNCTION__ = "main"

Changed 3 years ago by nevion

I commented out the assertion (807 in sink_input.c) and it's working fine?

Changed 3 years ago by blueskynis

Unfortunately, I can confirm this. I'm using Fedora 11 x64, pulseaudio 0.9.15.

If you need more data about it I will be glad to help.

Changed 2 years ago by lennart

  • status changed from new to closed
  • resolution set to fixed
  • milestone set to 0.9.16

This is fixed in PA 0.9.16/git.

Note: See TracTickets for help on using tickets.