[Bug 752651] decodebin: segfault on setting to NULL

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Aug 20 07:45:43 PDT 2015


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

--- Comment #16 from Vincent Penquerc'h <vincent.penquerch at collabora.co.uk> ---
Interestingly, while trying to repro the original trace, which I can't so far,
I had a lone deadlock:

Thread 2 (Thread 0x7fcd008c3700 (LWP 31266)):
#0  __lll_lock_wait () at
../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:132
#1  0x00007fcd05955065 in _L_lock_858 () from
/lib/x86_64-linux-gnu/libpthread.so.0
#2  0x00007fcd05954eba in __pthread_mutex_lock (mutex=0x7fccf8012c40) at
pthread_mutex_lock.c:61
#3  0x00007fcd05bf3ba1 in g_mutex_lock (mutex=<optimised out>) at
gthread-posix.c:209
#4  0x00007fcd043842c7 in analyze_new_pad (dbin=0x155ac50, src=<optimised out>,
pad=0x7fccf804cb30, caps=0x0, chain=<optimised out>)
    at gstdecodebin2.c:1867
#5  0x00007fcd04386f16 in pad_added_cb (element=0x7fcce8007480,
pad=0x7fccf804cb30, chain=0x1566280) at gstdecodebin2.c:2838
#6  0x00007fcd05eacd24 in g_cclosure_marshal_VOID__OBJECTv
(closure=0x7fccec023ee0, return_value=<optimised out>, 
    instance=0x7fcce8007480, args=<optimised out>, marshal_data=<optimised
out>, n_params=<optimised out>, param_types=0x137cc80)
    at gmarshal.c:1312
#7  0x00007fcd05ea979a in _g_closure_invoke_va (closure=0x7fccec023ee0,
return_value=0x0, instance=0x7fcce8007480, 
    args=0x7fcd008c2948, n_params=1, param_types=<optimised out>) at
gclosure.c:831
#8  0x00007fcd05ec4027 in g_signal_emit_valist (instance=0x7fcce8007480,
signal_id=<optimised out>, detail=0, 
    var_args=<optimised out>) at gsignal.c:3215
#9  0x00007fcd05ec4c12 in g_signal_emit (instance=<optimised out>,
signal_id=<optimised out>, detail=<optimised out>)
    at gsignal.c:3363
#10 0x00007fcd0613f500 in gst_element_add_pad (element=0x7fcce8007480,
pad=0x7fccf804cb30) at gstelement.c:694
#11 0x00007fcd00ef8d51 in gst_ogg_demux_activate_chain (ogg=0x7fcce8007480,
chain=0x14f7de0, event=0x155c230) at gstoggdemux.c:2923
#12 0x00007fcd00ef9c88 in gst_ogg_demux_perform_seek_pull (ogg=<optimised out>,
event=0x0) at gstoggdemux.c:3582
#13 0x00007fcd00f027e0 in gst_ogg_demux_loop (pad=<optimised out>) at
gstoggdemux.c:4757
#14 0x00007fcd06188ad9 in gst_task_func (task=0x15645f0) at gsttask.c:331
#15 0x00007fcd05bd6b68 in g_thread_pool_thread_proxy (data=<optimised out>) at
gthreadpool.c:307
#16 0x00007fcd05bd6305 in g_thread_proxy (data=0x7fccf40355e0) at gthread.c:764
#17 0x00007fcd05952e9a in start_thread (arg=0x7fcd008c3700) at
pthread_create.c:308
#18 0x00007fcd0568038d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#19 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fcd065f8700 (LWP 31263)):
#0  __lll_lock_wait () at
../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:132
#1  0x00007fcd05955080 in _L_lock_903 () from
/lib/x86_64-linux-gnu/libpthread.so.0
#2  0x00007fcd05954f19 in __pthread_mutex_lock (mutex=0x7fccec01a9c0) at
pthread_mutex_lock.c:82
#3  0x00007fcd06160ead in gst_pad_stop_task (pad=0x7fccf40384c0) at
gstpad.c:5884
#4  0x00007fcd0615bdbe in gst_pad_activate_mode (pad=0x7fccf40384c0,
mode=GST_PAD_MODE_PULL, active=0) at gstpad.c:1180
#5  0x00007fcd0615c7f0 in gst_pad_set_active (pad=0x7fccf40384c0, active=0) at
gstpad.c:1064
---Type <return> to continue, or q <return> to quit---
#6  0x00007fcd0613e3a4 in activate_pads (vpad=<optimised out>,
ret=0x7ffdcec72da0, active=0x7ffdcec72dfc) at gstelement.c:2689
#7  0x00007fcd0614e70c in gst_iterator_fold (it=0x1550ab0, func=0x7fcd0613e380
<activate_pads>, ret=0x7ffdcec72da0, 
    user_data=0x7ffdcec72dfc) at gstiterator.c:614
#8  0x00007fcd0613e5a5 in iterator_activate_fold_with_resync (iter=0x1550ab0,
user_data=0x7ffdcec72dfc, 
    func=0x7fcd0613e380 <activate_pads>) at gstelement.c:2709
#9  0x00007fcd06140468 in gst_element_pads_activate (element=0x7fcce8007480,
active=0) at gstelement.c:2753
#10 0x00007fcd06140745 in gst_element_change_state_func
(element=0x7fcce8007480, transition=<optimised out>) at gstelement.c:2817
#11 0x00007fcd00f02d55 in gst_ogg_demux_change_state (element=0x7fcce8007480,
transition=GST_STATE_CHANGE_PAUSED_TO_READY)
    at gstoggdemux.c:5050
#12 0x00007fcd061424cc in gst_element_change_state (element=0x7fcce8007480,
transition=<optimised out>) at gstelement.c:2604
#13 0x00007fcd06142e4f in gst_element_set_state_func (element=0x7fcce8007480,
state=GST_STATE_NULL) at gstelement.c:2560
#14 0x00007fcd0437f31f in gst_decode_chain_free_internal (chain=0x1566280,
hide=0) at gstdecodebin2.c:3288
#15 0x00007fcd0437f9b4 in gst_decode_chain_free (chain=0x1566280) at
gstdecodebin2.c:3309
#16 gst_decode_bin_change_state (element=0x155ac50,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstdecodebin2.c:4973
#17 0x00007fcd061424cc in gst_element_change_state (element=0x155ac50,
transition=<optimised out>) at gstelement.c:2604
#18 0x00007fcd06142e4f in gst_element_set_state_func (element=0x155ac50,
state=GST_STATE_READY) at gstelement.c:2560
#19 0x00007fcd06121ac0 in gst_bin_element_set_state (next=GST_STATE_READY,
current=GST_STATE_PAUSED, start_time=0, base_time=0, 
    element=0x155ac50, bin=0x154a070) at gstbin.c:2328
#20 gst_bin_change_state_func (element=0x154a070,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstbin.c:2676
#21 0x00007fcd0438bb81 in gst_uri_decode_bin_change_state (element=0x154a070,
transition=GST_STATE_CHANGE_PAUSED_TO_READY)
    at gsturidecodebin.c:2752
#22 0x00007fcd061424cc in gst_element_change_state (element=0x154a070,
transition=<optimised out>) at gstelement.c:2604
#23 0x00007fcd06142e4f in gst_element_set_state_func (element=0x154a070,
state=GST_STATE_READY) at gstelement.c:2560
#24 0x00007fcd06121ac0 in gst_bin_element_set_state (next=GST_STATE_READY,
current=GST_STATE_PAUSED, start_time=0, base_time=0, 
    element=0x154a070, bin=0x15301a0) at gstbin.c:2328
#25 gst_bin_change_state_func (element=0x15301a0,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstbin.c:2676
#26 0x00007fcd061424cc in gst_element_change_state (element=0x15301a0,
transition=<optimised out>) at gstelement.c:2604
#27 0x00007fcd06142e4f in gst_element_set_state_func (element=0x15301a0,
state=GST_STATE_NULL) at gstelement.c:2560
#28 0x000000000040138b in main ()

-- 
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