[Bug 752651] decodebin: segfault on setting to NULL

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Wed Oct 21 05:32:39 PDT 2015


https://bugzilla.gnome.org/show_bug.cgi?id=752651

--- Comment #34 from Vincent Penquerc'h <vincent.penquerch at collabora.co.uk> ---
Thread 7 (Thread 0x7f2218ad5700 (LWP 14562)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:215
#1  0x00007f221cdb2f25 in g_cond_wait_until (cond=0x7fc8a8, mutex=<optimised
out>, end_time=<optimised out>) at gthread-posix.c:892
#2  0x00007f221cd466c1 in g_async_queue_pop_intern_unlocked (queue=0x7fc8a0,
wait=1, end_time=12085224063356) at gasyncqueue.c:422
#3  0x00007f221cd95b8a in g_thread_pool_wait_for_new_task (pool=0x7fc840) at
gthreadpool.c:262
#4  g_thread_pool_thread_proxy (data=<optimised out>) at gthreadpool.c:296
#5  0x00007f221cd95305 in g_thread_proxy (data=0x7f220c032590) at gthread.c:764
#6  0x00007f221cb11e9a in start_thread (arg=0x7f2218ad5700) at
pthread_create.c:308
#7  0x00007f221c83f38d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#8  0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7f2219d43700 (LWP 14561)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:215
#1  0x00007f221cdb2f25 in g_cond_wait_until (cond=0x7fc8a8, mutex=<optimised
out>, end_time=<optimised out>) at gthread-posix.c:892
#2  0x00007f221cd466c1 in g_async_queue_pop_intern_unlocked (queue=0x7fc8a0,
wait=1, end_time=12085224056026) at gasyncqueue.c:422
#3  0x00007f221cd95b8a in g_thread_pool_wait_for_new_task (pool=0x7fc840) at
gthreadpool.c:262
#4  g_thread_pool_thread_proxy (data=<optimised out>) at gthreadpool.c:296
#5  0x00007f221cd95305 in g_thread_proxy (data=0x9aab20) at gthread.c:764
#6  0x00007f221cb11e9a in start_thread (arg=0x7f2219d43700) at
pthread_create.c:308
#7  0x00007f221c83f38d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#8  0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7f2212323700 (LWP 14563)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f221cdb2e2f in g_cond_wait (cond=0xb92e30, mutex=<optimised out>) at
gthread-posix.c:756
#2  0x00007f221d349c4b in gst_task_func (task=0xb92dd0) at gsttask.c:316
#3  0x00007f221cd95b68 in g_thread_pool_thread_proxy (data=<optimised out>) at
gthreadpool.c:307
#4  0x00007f221cd95305 in g_thread_proxy (data=0x7f220c032680) at gthread.c:764
#5  0x00007f221cb11e9a in start_thread (arg=0x7f2212323700) at
pthread_create.c:308
#6  0x00007f221c83f38d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f2211b22700 (LWP 14564)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:215
#1  0x00007f221cdb2f25 in g_cond_wait_until (cond=0x7fc8a8, mutex=<optimised
out>, end_time=<optimised out>) at gthread-posix.c:892
#2  0x00007f221cd466c1 in g_async_queue_pop_intern_unlocked (queue=0x7fc8a0,
wait=1, end_time=12085224056192) at gasyncqueue.c:422
#3  0x00007f221cd95b8a in g_thread_pool_wait_for_new_task (pool=0x7fc840) at
gthreadpool.c:262
#4  g_thread_pool_thread_proxy (data=<optimised out>) at gthreadpool.c:296
#5  0x00007f221cd95305 in g_thread_proxy (data=0x98fca0) at gthread.c:764
#6  0x00007f221cb11e9a in start_thread (arg=0x7f2211b22700) at
pthread_create.c:308
#7  0x00007f221c83f38d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#8  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f221a75c700 (LWP 14560)):
#0  0x00007f221d303ebf in gst_element_factory_get_type () at
gstelementfactory.c:87
#1  0x00007f221d304dc9 in gst_element_factory_get_static_pad_templates
(factory=0x8750f0) at gstelementfactory.c:599
#2  0x00007f221d305470 in gst_element_factory_list_filter (list=0x993d20,
caps=0x98a540, direction=GST_PAD_SINK, subsetonly=1)
    at gstelementfactory.c:850
#3  0x00007f221b544c50 in gst_uri_decode_bin_autoplug_factories
(element=0xb7c0b0, pad=<optimised out>, caps=0x98a540)
    at gsturidecodebin.c:342
#4  0x00007f221bc3da14 in ffi_call_unix64 () from
/usr/lib/x86_64-linux-gnu/libffi.so.6
#5  0x00007f221bc3d435 in ffi_call () from
/usr/lib/x86_64-linux-gnu/libffi.so.6
#6  0x00007f221d068ddb in g_cclosure_marshal_generic (closure=0xa75e20,
return_gvalue=0x7f221a75a950, n_param_values=3, 
    param_values=<optimised out>, invocation_hint=<optimised out>,
marshal_data=0x7f221b544b70) at gclosure.c:1448
#7  0x00007f221d0684eb in g_closure_invoke (closure=0xa75e20,
return_value=0x7f221a75a950, n_param_values=3, 
    param_values=0x7f221a75a9c0, invocation_hint=<optimised out>) at
gclosure.c:768
#8  0x00007f221d07b9b1 in signal_emit_unlocked_R (node=<optimised out>,
detail=0, instance=<optimised out>, 
    emission_return=0x7f221a75abc0, instance_and_params=0x7f221a75a9c0) at
gsignal.c:3589
#9  0x00007f221d08363b in g_signal_emit_valist (instance=0xb7c0b0,
signal_id=<optimised out>, detail=0, var_args=<optimised out>)
    at gsignal.c:3317
#10 0x00007f221d083c12 in g_signal_emit (instance=<optimised out>,
signal_id=<optimised out>, detail=<optimised out>)
    at gsignal.c:3363
#11 0x00007f221b545015 in proxy_autoplug_factories_signal (decodebin=<optimised
out>, pad=<optimised out>, caps=<optimised out>, 
    dec=0xb7c0b0) at gsturidecodebin.c:1722
#12 0x00007f221bc3da14 in ffi_call_unix64 () from
/usr/lib/x86_64-linux-gnu/libffi.so.6
#13 0x00007f221bc3d435 in ffi_call () from
/usr/lib/x86_64-linux-gnu/libffi.so.6
#14 0x00007f221d068ddb in g_cclosure_marshal_generic (closure=0xa94070,
return_gvalue=0x7f221a75b0e0, n_param_values=3, 
    param_values=<optimised out>, invocation_hint=<optimised out>,
marshal_data=0x7f221b544ff0) at gclosure.c:1448
#15 0x00007f221d068572 in g_closure_invoke (closure=0xa94070,
return_value=0x7f221a75b0e0, n_param_values=3, 
    param_values=0x7f221a75b150, invocation_hint=<optimised out>) at
gclosure.c:768
#16 0x00007f221d07b5f1 in signal_emit_unlocked_R (node=<optimised out>,
detail=0, instance=<optimised out>, 
    emission_return=0x7f221a75b350, instance_and_params=0x7f221a75b150) at
gsignal.c:3551
#17 0x00007f221d08363b in g_signal_emit_valist (instance=0xb893a0,
signal_id=<optimised out>, detail=0, var_args=<optimised out>)
    at gsignal.c:3317
#18 0x00007f221d083c12 in g_signal_emit (instance=<optimised out>,
signal_id=<optimised out>, detail=<optimised out>)
    at gsignal.c:3363
#19 0x00007f221b5410b4 in analyze_new_pad (dbin=0xb893a0, src=0x7f220800b920,
pad=0x7f2214068660, caps=0x98a540, 
    chain=0x7f22080072f0) at gstdecodebin2.c:1610
#20 0x00007f221b543be6 in pad_added_cb (element=0x7f220800b920,
pad=0x7f2214068660, chain=0x7f2208003a70) at gstdecodebin2.c:2906
#21 0x00007f221d06bd24 in g_cclosure_marshal_VOID__OBJECTv
(closure=0x7f2200035410, return_value=<optimised out>, 
    instance=0x7f220800b920, args=<optimised out>, marshal_data=<optimised
out>, n_params=<optimised out>, param_types=0x7f1850)
    at gmarshal.c:1312
#22 0x00007f221d06879a in _g_closure_invoke_va (closure=0x7f2200035410,
return_value=0x0, instance=0x7f220800b920, 
    args=0x7f221a75b948, n_params=1, param_types=<optimised out>) at
gclosure.c:831
#23 0x00007f221d083027 in g_signal_emit_valist (instance=0x7f220800b920,
signal_id=<optimised out>, detail=0, 
    var_args=<optimised out>) at gsignal.c:3215
#24 0x00007f221d083c12 in g_signal_emit (instance=<optimised out>,
signal_id=<optimised out>, detail=<optimised out>)
    at gsignal.c:3363
#25 0x00007f221d2ffdf0 in gst_element_add_pad (element=0x7f220800b920,
pad=0x7f2214068660) at gstelement.c:697
#26 0x00007f221910ad51 in gst_ogg_demux_activate_chain (ogg=0x7f220800b920,
chain=0x7f2204005cf0, event=0x7f2214005110)
    at gstoggdemux.c:2923
#27 0x00007f221910bc88 in gst_ogg_demux_perform_seek_pull (ogg=<optimised out>,
event=0x0) at gstoggdemux.c:3582
#28 0x00007f22191147e0 in gst_ogg_demux_loop (pad=<optimised out>) at
gstoggdemux.c:4757
#29 0x00007f221d349a69 in gst_task_func (task=0x7f22000033b0) at gsttask.c:331
#30 0x00007f221cd95b68 in g_thread_pool_thread_proxy (data=<optimised out>) at
gthreadpool.c:307
#31 0x00007f221cd95305 in g_thread_proxy (data=0xb6f140) at gthread.c:764
#32 0x00007f221cb11e9a in start_thread (arg=0x7f221a75c700) at
pthread_create.c:308
#33 0x00007f221c83f38d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#34 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f221d7b9700 (LWP 14558)):
#0  __lll_lock_wait () at
../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:132
#1  0x00007f221cb14080 in _L_lock_903 () from
/lib/x86_64-linux-gnu/libpthread.so.0
#2  0x00007f221cb13f19 in __pthread_mutex_lock (mutex=0x7f2208025e40) at
pthread_mutex_lock.c:82
#3  0x00007f221d321ccd in gst_pad_stop_task (pad=0x7f221406e6f0) at
gstpad.c:5949
#4  0x00007f221d31cace in gst_pad_activate_mode (pad=0x7f221406e6f0,
mode=GST_PAD_MODE_PULL, active=0) at gstpad.c:1187
#5  0x00007f221d31d500 in gst_pad_set_active (pad=0x7f221406e6f0, active=0) at
gstpad.c:1071
#6  0x00007f221d2fec8d in activate_pads (vpad=<optimised out>,
ret=0x7ffd2cde51e0, active=0x7ffd2cde523c) at gstelement.c:2693
#7  0x00007f221d30f25c in gst_iterator_fold (it=0xb7e810, func=0x7f221d2fec60
<activate_pads>, ret=0x7ffd2cde51e0, 
    user_data=0x7ffd2cde523c) at gstiterator.c:614
#8  0x00007f221d2fee95 in iterator_activate_fold_with_resync (iter=0xb7e810,
user_data=0x7ffd2cde523c, 
    func=0x7f221d2fec60 <activate_pads>) at gstelement.c:2717
#9  0x00007f221d300d28 in gst_element_pads_activate (element=0x7f220800abe0,
active=0) at gstelement.c:2761
#10 0x00007f221d30101e in gst_element_change_state_func
(element=0x7f220800abe0, transition=<optimised out>) at gstelement.c:2827
#11 0x00007f2219114d55 in gst_ogg_demux_change_state (element=0x7f220800abe0,
transition=GST_STATE_CHANGE_PAUSED_TO_READY)
    at gstoggdemux.c:5050
#12 0x00007f221d302e0c in gst_element_change_state (element=0x7f220800abe0,
transition=<optimised out>) at gstelement.c:2607
#13 0x00007f221d30378f in gst_element_set_state_func (element=0x7f220800abe0,
state=GST_STATE_NULL) at gstelement.c:2563
#14 0x00007f221b53b8ef in gst_decode_chain_free_internal (chain=0x7f220c039410,
hide=0) at gstdecodebin2.c:3447
#15 0x00007f221b53bf94 in gst_decode_chain_free (chain=0x7f220c039410) at
gstdecodebin2.c:3466
#16 gst_decode_bin_change_state (element=0xb89610,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstdecodebin2.c:5198
#17 0x00007f221d302e0c in gst_element_change_state (element=0xb89610,
transition=<optimised out>) at gstelement.c:2607
#18 0x00007f221d30378f in gst_element_set_state_func (element=0xb89610,
state=GST_STATE_READY) at gstelement.c:2563
#19 0x00007f221d2e16e0 in gst_bin_element_set_state (next=GST_STATE_READY,
current=GST_STATE_PAUSED, start_time=0, base_time=0, 
    element=0xb89610, bin=0xb7c310) at gstbin.c:2410
#20 gst_bin_change_state_func (element=0xb7c310,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstbin.c:2743
#21 0x00007f221b548851 in gst_uri_decode_bin_change_state (element=0xb7c310,
transition=GST_STATE_CHANGE_PAUSED_TO_READY)
    at gsturidecodebin.c:2752
#22 0x00007f221d302e0c in gst_element_change_state (element=0xb7c310,
transition=<optimised out>) at gstelement.c:2607
#23 0x00007f221d30378f in gst_element_set_state_func (element=0xb7c310,
state=GST_STATE_READY) at gstelement.c:2563
#24 0x00007f221d2e16e0 in gst_bin_element_set_state (next=GST_STATE_READY,
current=GST_STATE_PAUSED, start_time=0, base_time=0, 
    element=0xb7c310, bin=0xb6c720) at gstbin.c:2410
#25 gst_bin_change_state_func (element=0xb6c720,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstbin.c:2743
#26 0x00007f221d302e0c in gst_element_change_state (element=0xb6c720,
transition=<optimised out>) at gstelement.c:2607
#27 0x00007f221d30378f in gst_element_set_state_func (element=0xb6c720,
state=GST_STATE_NULL) at gstelement.c:2563
#28 0x000000000040138b in main ()

Thread 1 (Thread 0x7f2211321700 (LWP 14565)):
#0  0x00007f221c7820d5 in __GI_raise (sig=<optimised out>) at
../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007f221c78583b in __GI_abort () at abort.c:91
#2  0x00007f221c77ad9e in __assert_fail_base (fmt=<optimised out>, 
    assertion=0x7f221cb1be30 "new_prio == -1 || (new_prio >=
__sched_fifo_min_prio && new_prio <= __sched_fifo_max_prio)", 
    file=0x7f221cb1be24 "tpp.c", line=<optimised out>, function=<optimised
out>) at assert.c:94
#3  0x00007f221c77ae42 in __GI___assert_fail (
    assertion=0x7f221cb1be30 "new_prio == -1 || (new_prio >=
__sched_fifo_min_prio && new_prio <= __sched_fifo_max_prio)", 
    file=0x7f221cb1be24 "tpp.c", line=63, function=0x7f221cb1bf00
"__pthread_tpp_change_priority") at assert.c:103
#4  0x00007f221cb1aa45 in __pthread_tpp_change_priority (previous_prio=-1,
new_prio=7936) at tpp.c:61
#5  0x00007f221cb0fbed in __pthread_mutex_lock_full (mutex=0x7f21f80222e0) at
pthread_mutex_lock.c:415
#6  0x00007f221cdb2ba1 in g_mutex_lock (mutex=<optimised out>) at
gthread-posix.c:209
#7  0x00007f221b540db7 in analyze_new_pad (dbin=0xb89610, src=<optimised out>,
pad=0x7f21f80184b0, caps=0x0, chain=<optimised out>)
    at gstdecodebin2.c:1873
#8  0x00007f221b543be6 in pad_added_cb (element=0x7f220800abe0,
pad=0x7f21f80184b0, chain=0x7f220c039410) at gstdecodebin2.c:2906
#9  0x00007f221d06bd24 in g_cclosure_marshal_VOID__OBJECTv
(closure=0x7f2208031c60, return_value=<optimised out>, 
    instance=0x7f220800abe0, args=<optimised out>, marshal_data=<optimised
out>, n_params=<optimised out>, param_types=0x7f1850)
    at gmarshal.c:1312
#10 0x00007f221d06879a in _g_closure_invoke_va (closure=0x7f2208031c60,
return_value=0x0, instance=0x7f220800abe0, 
    args=0x7f2211320948, n_params=1, param_types=<optimised out>) at
gclosure.c:831
#11 0x00007f221d083027 in g_signal_emit_valist (instance=0x7f220800abe0,
signal_id=<optimised out>, detail=0, 
    var_args=<optimised out>) at gsignal.c:3215
#12 0x00007f221d083c12 in g_signal_emit (instance=<optimised out>,
signal_id=<optimised out>, detail=<optimised out>)
    at gsignal.c:3363
#13 0x00007f221d2ffdf0 in gst_element_add_pad (element=0x7f220800abe0,
pad=0x7f21f80184b0) at gstelement.c:697
#14 0x00007f221910ad51 in gst_ogg_demux_activate_chain (ogg=0x7f220800abe0,
chain=0xb6f0a0, event=0x7f22080106a0)
    at gstoggdemux.c:2923
#15 0x00007f221910bc88 in gst_ogg_demux_perform_seek_pull (ogg=<optimised out>,
event=0x0) at gstoggdemux.c:3582
#16 0x00007f22191147e0 in gst_ogg_demux_loop (pad=<optimised out>) at
gstoggdemux.c:4757
#17 0x00007f221d349a69 in gst_task_func (task=0x7f2208016ef0) at gsttask.c:331
#18 0x00007f221cd95b68 in g_thread_pool_thread_proxy (data=<optimised out>) at
gthreadpool.c:307
#19 0x00007f221cd95305 in g_thread_proxy (data=0x7f220c032ad0) at gthread.c:764
#20 0x00007f221cb11e9a in start_thread (arg=0x7f2211321700) at
pthread_create.c:308
#21 0x00007f221c83f38d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#22 0x0000000000000000 in ?? ()

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list