[gstreamer-bugs] [Bug 333112] [playbin] shutdown can deadlock with pull-based demuxers

GStreamer (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Mon Oct 2 06:59:16 PDT 2006


Do not reply to this via email (we are currently unable to handle email
responses and they get discarded).  You can add comments to this bug at
http://bugzilla.gnome.org/show_bug.cgi?id=333112

  GStreamer | gst-plugins-base | Ver: HEAD CVS


Tim-Philipp Müller changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[oggdemux] deadlock         |[playbin] shutdown can
                   |                            |deadlock with pull-based
                   |                            |demuxers




------- Comment #5 from Tim-Philipp Müller  2006-10-02 13:58 UTC -------
Same happens with other demuxers, changing title accordingly. Trace for
wavparse:

Thread 4 (Thread -1273447520 (LWP 15304)):
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb730000e in __lll_mutex_lock_wait () from
/lib/tls/i686/cmov/libpthread.so.0
#2  0xb72fc673 in _L_mutex_lock_49 () from /lib/tls/i686/cmov/libpthread.so.0
#3  0xb418ad08 in ?? ()
#4  0xb74e88a8 in g_thread_equal_posix_impl (thread1=0xb1a0587c,
thread2=0xb1a05898) at gthread-posix.c:415
#5  0xb741ab80 in IA__g_static_rec_mutex_lock (mutex=0xb730000e) at
gthread.c:257
#6  0xb4a3ecfe in new_pad (element=0x818ed30, pad=0x851a640,
dynamic=0xb1a05f68) at gstdecodebin.c:1208
#7  0xb76cb0e9 in IA__g_cclosure_marshal_VOID__OBJECT (closure=0xb1a036b0,
return_value=0x0, n_param_values=2, param_values=0xb418af9c, 
    invocation_hint=0xb418aeac, marshal_data=0xb4a3ecb0) at gmarshal.c:636
#8  0xb76be83b in IA__g_closure_invoke (closure=0xb1a036b0, return_value=0x0,
n_param_values=2, param_values=0xb418af9c, invocation_hint=0xb418aeac)
    at gclosure.c:490
#9  0xb76cec43 in signal_emit_unlocked_R (node=0x80a2fa0, detail=0,
instance=0x818ed30, emission_return=0x0, instance_and_params=0xb418af9c) at
gsignal.c:2438
#10 0xb76d0167 in IA__g_signal_emit_valist (instance=0x818ed30, signal_id=7,
detail=0, var_args=0xb418b1e0 "@:H\b") at gsignal.c:2197
#11 0xb76d0329 in IA__g_signal_emit (instance=0x818ed30, signal_id=7, detail=0)
at gsignal.c:2241
#12 0xb771ce18 in gst_element_add_pad (element=0x818ed30, pad=0x851a640) at
gstelement.c:650
#13 0xb4a3480b in gst_wavparse_add_src_pad (wav=0x818ed30, buf=<value optimized
out>) at gstwavparse.c:1412
#14 0xb4a354c2 in gst_wavparse_stream_data (wav=0x818ed30) at
gstwavparse.c:1477
#15 0xb4a35ba2 in gst_wavparse_loop (pad=0x847ee38) at gstwavparse.c:1602

Thread 1 (Thread -1226529104 (LWP 15281)):
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb730000e in __lll_mutex_lock_wait () from
/lib/tls/i686/cmov/libpthread.so.0
#2  0xb72fc673 in _L_mutex_lock_49 () from /lib/tls/i686/cmov/libpthread.so.0
#3  0xbfa56b38 in ?? ()
#4  0xb74e88a8 in g_thread_equal_posix_impl (thread1=0xb1a05fb4,
thread2=0xb1a05fd0) at gthread-posix.c:415
#5  0xb741ab80 in IA__g_static_rec_mutex_lock (mutex=0xb730000e) at
gthread.c:257
#6  0xb772e0a2 in gst_pad_stop_task (pad=0x847ee38) at gstpad.c:4197
#7  0xb4a3672e in gst_wavparse_sink_activate_pull (sinkpad=0x847ee38, active=0)
at gstwavparse.c:1954
#8  0xb77357d4 in gst_pad_activate_pull (pad=0x847ee38, active=0) at
gstpad.c:753
#9  0xb77361bf in gst_pad_set_active (pad=0x847ee38, active=0) at gstpad.c:657
#10 0xb771eacb in activate_pads (pad=0x847ee38, ret=0xbfa56cc8,
active=0xbfa56d28) at gstelement.c:2310
#11 0xb772a867 in gst_iterator_fold (it=0xb1a05820, func=0xb771eaa0
<activate_pads>, ret=0xbfa56cc8, user_data=0xbfa56d28) at gstiterator.c:503
#12 0xb771e542 in iterator_activate_fold_with_resync (iter=0xb1a05820,
func=0xb771eaa0 <activate_pads>, user_data=0xbfa56d28) at gstelement.c:2342
#13 0xb771e608 in gst_element_pads_activate (element=0x818ed30, active=0) at
gstelement.c:2385
#14 0xb771e8d1 in gst_element_change_state_func (element=0x818ed30,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstelement.c:2462
#15 0xb4a369af in gst_wavparse_change_state (element=0x818ed30,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstwavparse.c:1983
... setting decodebin/playbin state to READY/NULL from application thread ...


-- 
Configure bugmail: http://bugzilla.gnome.org/userprefs.cgi?tab=email




More information about the Gstreamer-bugs mailing list