[gstreamer-bugs] [Bug 626581] New: [playbin2] regression: occasional deadlocks in streamsynchronizer

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Aug 10 16:31:32 PDT 2010


https://bugzilla.gnome.org/show_bug.cgi?id=626581
  GStreamer | gst-plugins-base | git

           Summary: [playbin2] regression: occasional deadlocks in
                    streamsynchronizer
    Classification: Desktop
           Product: GStreamer
           Version: git
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: blocker
          Priority: Normal
         Component: gst-plugins-base
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: t.i.m at zen.co.uk
         QAContact: gstreamer-bugs at lists.sourceforge.net
      GNOME target: ---
     GNOME version: ---


Totem regularly locks up during music playback and goom visualisations, with
git of GStreamer:

(gdb) thread apply all bt

Thread 6 (Thread 0x7f81677fd710 (LWP 12676)):
#0  __lll_lock_wait () at
../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:136
#1  0x00007f81887500e9 in _L_lock_953 () from /lib/libpthread.so.0
#2  0x00007f818874ff0b in __pthread_mutex_lock (mutex=0x2924b30) at
pthread_mutex_lock.c:61
#3  0x00007f817a69f6c9 in gst_stream_synchronizer_sink_chain (pad=0x3b5a300,
buffer=0x3b56eb0) at gststreamsynchronizer.c:573
#4  0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x3b5a300,
is_buffer=1, data=0x3b56eb0) at gstpad.c:4182
#5  0x00007f8187c3804e in gst_pad_push_data (pad=0x3b5ac00, is_buffer=1,
data=0x3b56eb0) at gstpad.c:4411
#6  0x00007f817a24fc3d in gst_tee_do_push (tee=0x26bdb00, data=<value optimized
out>, is_list=<value optimized out>) at gsttee.c:636
#7  gst_tee_handle_data (tee=0x26bdb00, data=<value optimized out>,
is_list=<value optimized out>) at gsttee.c:715
#8  0x00007f817a25009f in gst_tee_chain (pad=<value optimized out>,
buffer=0x3b56eb0) at gsttee.c:789
#9  0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x2b24da0,
is_buffer=1, data=0x3b56eb0) at gstpad.c:4182
#10 0x00007f8187c3804e in gst_pad_push_data (pad=0x7f8160015550, is_buffer=1,
data=0x3b56eb0) at gstpad.c:4411
#11 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x7f8160014000,
is_buffer=1, data=0x3b56eb0) at gstpad.c:4182
#12 0x00007f8187c3804e in gst_pad_push_data (pad=0x7f81600279b0, is_buffer=1,
data=0x3b56eb0) at gstpad.c:4411
#13 0x00007f817a6937a8 in gst_selector_pad_chain (pad=0x3b58ef0, buf=0x3b56eb0)
at gstinputselector.c:647
#14 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x3b58ef0,
is_buffer=1, data=0x3b56eb0) at gstpad.c:4182
#15 0x00007f8187c3804e in gst_pad_push_data (pad=0x7f8160014540, is_buffer=1,
data=0x3b56eb0) at gstpad.c:4411
#16 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x7f8160015dc0,
is_buffer=1, data=0x3b56eb0) at gstpad.c:4182
#17 0x00007f8187c3804e in gst_pad_push_data (pad=0x3bb3810, is_buffer=1,
data=0x3b56eb0) at gstpad.c:4411
#18 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x7f8160015a60,
is_buffer=1, data=0x3b56eb0) at gstpad.c:4182
#19 0x00007f8187c3804e in gst_pad_push_data (pad=0x3b8f3c0, is_buffer=1,
data=0x3b56eb0) at gstpad.c:4411
#20 0x00007f8172bf305a in gst_mad_chain (pad=<value optimized out>,
buffer=<value optimized out>) at gstmad.c:1653
#21 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x2a83dc0,
is_buffer=1, data=0x2afdf10) at gstpad.c:4182
#22 0x00007f8187c3804e in gst_pad_push_data (pad=0x7f81600273b0, is_buffer=1,
data=0x2afdf10) at gstpad.c:4411
#23 0x00007f81735fe38a in gst_mp3parse_emit_frame (mp3parse=0x2812f70,
size=1045, mode=1, crc=1) at gstmpegaudioparse.c:903
#24 0x00007f81735ff439 in gst_mp3parse_handle_data (mp3parse=0x2812f70,
at_eos=<value optimized out>) at gstmpegaudioparse.c:1529
#25 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x3b8f240,
is_buffer=1, data=0x7f8160405140) at gstpad.c:4182
#26 0x00007f8187c3804e in gst_pad_push_data (pad=0x7f8160027b30, is_buffer=1,
data=0x7f8160405140) at gstpad.c:4411
#27 0x00007f81879ccf48 in gst_tag_demux_chain (pad=<value optimized out>,
buf=<value optimized out>) at gsttagdemux.c:712
#28 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x7f8160027cb0,
is_buffer=1, data=0x7f8160405140) at gstpad.c:4182
#29 0x00007f8187c3804e in gst_pad_push_data (pad=0x2a83c40, is_buffer=1,
data=0x7f8160405140) at gstpad.c:4411
#30 0x00007f817a252a02 in gst_type_find_element_chain (pad=<value optimized
out>, buffer=0x7f8160405140) at gsttypefindelement.c:767
#31 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x2a83040,
is_buffer=1, data=0x7f8160405140) at gstpad.c:4182
#32 0x00007f8187c3804e in gst_pad_push_data (pad=0x28b6df0, is_buffer=1,
data=0x7f8160405140) at gstpad.c:4411
#33 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x2c66000,
is_buffer=1, data=0x7f8160405140) at gstpad.c:4182
#34 0x00007f8187c3804e in gst_pad_push_data (pad=0x7f81600276b0, is_buffer=1,
data=0x7f8160405140) at gstpad.c:4411
#35 0x00007f818a109c11 in gst_base_src_loop (pad=0x7f81600276b0) at
gstbasesrc.c:2496
#36 0x00007f8187c6265b in gst_task_func (task=0x29a2380) at gsttask.c:271
#37 0x00007f8184be452f in g_thread_pool_thread_proxy (data=<value optimized
out>) at /tmp/buildd/glib2.0-2.24.1/glib/gthreadpool.c:315
#38 0x00007f8184be26e4 in g_thread_create_proxy (data=0x3b747c0) at
/tmp/buildd/glib2.0-2.24.1/glib/gthread.c:1893
#39 0x00007f818874d8ba in start_thread (arg=<value optimized out>) at
pthread_create.c:300
#40 0x00007f8183d1d01d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#41 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7f816b9cf710 (LWP 13124)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f817a2461e3 in gst_queue_loop (pad=<value optimized out>) at
gstqueue.c:1174
#2  0x00007f8187c6265b in gst_task_func (task=0x7f816c014060) at gsttask.c:271
#3  0x00007f8184be452f in g_thread_pool_thread_proxy (data=<value optimized
out>) at /tmp/buildd/glib2.0-2.24.1/glib/gthreadpool.c:315
#4  0x00007f8184be26e4 in g_thread_create_proxy (data=0x2c8bc80) at
/tmp/buildd/glib2.0-2.24.1/glib/gthread.c:1893
#5  0x00007f818874d8ba in start_thread (arg=<value optimized out>) at
pthread_create.c:300
#6  0x00007f8183d1d01d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f81728b7710 (LWP 15313)):
#0  __lll_lock_wait () at
../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:136
#1  0x00007f81887500e9 in _L_lock_953 () from /lib/libpthread.so.0
#2  0x00007f818874ff0b in __pthread_mutex_lock (mutex=0x2924b30) at
pthread_mutex_lock.c:61
#3  0x00007f817a69f6c9 in gst_stream_synchronizer_sink_chain (pad=0x2b24c20,
buffer=0x7f816c029340) at gststreamsynchronizer.c:573
#4  0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x2b24c20,
is_buffer=1, data=0x7f816c029340) at gstpad.c:4182
#5  0x00007f8187c3804e in gst_pad_push_data (pad=0x28b9a80, is_buffer=1,
data=0x7f816c029340) at gstpad.c:4411
#6  0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x2b25080,
is_buffer=1, data=0x7f816c029340) at gstpad.c:4182
#7  0x00007f8187c3804e in gst_pad_push_data (pad=0x28b9e00, is_buffer=1,
data=0x7f816c029340) at gstpad.c:4411
#8  0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x2b253e0,
is_buffer=1, data=0x7f816c029340) at gstpad.c:4182
#9  0x00007f8187c3804e in gst_pad_push_data (pad=0x2a83340, is_buffer=1,
data=0x7f816c029340) at gstpad.c:4411
#10 0x00007f818a110947 in gst_base_transform_chain (pad=<value optimized out>,
buffer=<value optimized out>) at gstbasetransform.c:2307
#11 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x2a831c0,
is_buffer=1, data=0x7f816c029340) at gstpad.c:4182
#12 0x00007f8187c3804e in gst_pad_push_data (pad=0x2b241a0, is_buffer=1,
data=0x7f816c029340) at gstpad.c:4411
#13 0x00007f8176fb8fc0 in gst_goom_chain (pad=<value optimized out>,
buffer=0xae62db6) at gstgoom.c:528
#14 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x2b24020,
is_buffer=1, data=0x3b569b0) at gstpad.c:4182
#15 0x00007f8187c3804e in gst_pad_push_data (pad=0x2b25230, is_buffer=1,
data=0x3b569b0) at gstpad.c:4411
#16 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x28b9700,
is_buffer=1, data=0x3b569b0) at gstpad.c:4182
#17 0x00007f8187c3804e in gst_pad_push_data (pad=0x3b9d660, is_buffer=1,
data=0x3b569b0) at gstpad.c:4411
#18 0x00007f818a110947 in gst_base_transform_chain (pad=<value optimized out>,
buffer=<value optimized out>) at gstbasetransform.c:2307
#19 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x3b9d4e0,
is_buffer=1, data=0x3b569b0) at gstpad.c:4182
#20 0x00007f8187c3804e in gst_pad_push_data (pad=0x3b9d360, is_buffer=1,
data=0x3b569b0) at gstpad.c:4411
#21 0x00007f818a110947 in gst_base_transform_chain (pad=<value optimized out>,
buffer=<value optimized out>) at gstbasetransform.c:2307
#22 0x00007f8187c3775d in gst_pad_chain_data_unchecked (pad=0x3b9d1e0,
is_buffer=1, data=0x7f8160404bb0) at gstpad.c:4182
#23 0x00007f8187c3804e in gst_pad_push_data (pad=0x3b9d060, is_buffer=1,
data=0x7f8160404bb0) at gstpad.c:4411
#24 0x00007f817a2468c9 in gst_queue_push_one (pad=<value optimized out>) at
gstqueue.c:1083
#25 gst_queue_loop (pad=<value optimized out>) at gstqueue.c:1185
#26 0x00007f8187c6265b in gst_task_func (task=0x29a2a80) at gsttask.c:271
#27 0x00007f8184be452f in g_thread_pool_thread_proxy (data=<value optimized
out>) at /tmp/buildd/glib2.0-2.24.1/glib/gthreadpool.c:315
#28 0x00007f8184be26e4 in g_thread_create_proxy (data=0x7f816c086910) at
/tmp/buildd/glib2.0-2.24.1/glib/gthread.c:1893
#29 0x00007f818874d8ba in start_thread (arg=<value optimized out>) at
pthread_create.c:300
#30 0x00007f8183d1d01d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#31 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f8170fc8710 (LWP 32674)):
#0  0x00007f81887557dd in nanosleep () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007f8184be52a8 in IA__g_usleep (microseconds=<value optimized out>) at
/tmp/buildd/glib2.0-2.24.1/glib/gtimer.c:260
#2  0x00007f8179e2011f in gst_xvimagesink_event_thread
(xvimagesink=0x7f8160012eb0) at xvimagesink.c:1655
#3  0x00007f8184be26e4 in g_thread_create_proxy (data=0x7f816001a3e0) at
/tmp/buildd/glib2.0-2.24.1/glib/gthread.c:1893
#4  0x00007f818874d8ba in start_thread (arg=<value optimized out>) at
pthread_create.c:300
#5  0x00007f8183d1d01d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f81735f7710 (LWP 32675)):
#0  0x00007f8183d12103 in *__GI___poll (fds=<value optimized out>, nfds=<value
optimized out>, timeout=96) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f8178fe3adf in ?? () from /usr/lib/libpulse.so.0
#2  0x00007f8178fd3b76 in pa_mainloop_poll () from /usr/lib/libpulse.so.0
#3  0x00007f8178fd4f59 in pa_mainloop_iterate () from /usr/lib/libpulse.so.0
#4  0x00007f8178fd5010 in pa_mainloop_run () from /usr/lib/libpulse.so.0
#5  0x00007f8178fe38eb in ?? () from /usr/lib/libpulse.so.0
#6  0x00007f8178da1710 in ?? () from /usr/lib/libpulsecommon-0.9.21.so
#7  0x00007f818874d8ba in start_thread (arg=<value optimized out>) at
pthread_create.c:300
#8  0x00007f8183d1d01d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#9  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f818a50a7e0 (LWP 10058)):
#0  __lll_lock_wait () at
../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:136
#1  0x00007f81887500e9 in _L_lock_953 () from /lib/libpthread.so.0
#2  0x00007f818874ff0b in __pthread_mutex_lock (mutex=0x2c90e08) at
pthread_mutex_lock.c:61
#3  0x00007f8184be3188 in IA__g_static_rec_mutex_lock (mutex=0x2c90e00) at
/tmp/buildd/glib2.0-2.24.1/glib/gthread.c:1420
#4  0x00007f8187c33515 in post_activate (pad=0x2b24c20, new_mode=128) at
gstpad.c:635
#5  0x00007f8187c3c8db in gst_pad_activate_push (pad=0x2b24c20, active=0) at
gstpad.c:937
#6  0x00007f8187c3d538 in gst_pad_set_active (pad=0x2b24c20, active=0) at
gstpad.c:693
#7  0x00007f817a69e384 in gst_stream_synchronizer_release_stream
(self=0x25abea0, stream=0x7f816c024810) at gststreamsynchronizer.c:721
#8  0x00007f817a69e5db in gst_stream_synchronizer_release_pad (element=<value
optimized out>, pad=0x2b24c20) at gststreamsynchronizer.c:766
#9  0x00007f817a685b28 in gst_play_sink_reconfigure (playsink=0x2a6c340) at
gstplaysink.c:2245
#10 0x00007f817a67f8c2 in gst_play_bin_set_flags (object=0x2922ce0,
prop_id=<value optimized out>, value=0x7fff460d7330, pspec=0x28c7760) at
gstplaybin2.c:1242
#11 gst_play_bin_set_property (object=0x2922ce0, prop_id=<value optimized out>,
value=0x7fff460d7330, pspec=0x28c7760) at gstplaybin2.c:1734
#12 0x00007f81857c7dd7 in object_set_property (object=0x2922ce0,
first_property_name=<value optimized out>, var_args=0x7fff460d73b0) at
/tmp/buildd/glib2.0-2.24.1/gobject/gobject.c:973
#13 IA__g_object_set_valist (object=0x2922ce0, first_property_name=<value
optimized out>, var_args=0x7fff460d73b0) at
/tmp/buildd/glib2.0-2.24.1/gobject/gobject.c:1488
#14 0x00007f81857c83b4 in IA__g_object_set (_object=0x2922ce0,
first_property_name=0x4670b8 "flags") at
/tmp/buildd/glib2.0-2.24.1/gobject/gobject.c:1594
#15 0x0000000000452676 in setup_vis (bvw=0x2a6c080) at
bacon-video-widget-gst-0.10.c:4904
#16 0x0000000000451ee2 in bvw_check_for_cover_pixbuf (bvw=0x2a6c080) at
bacon-video-widget-gst-0.10.c:4397
#17 0x0000000000452034 in bvw_update_tags (bvw=0x2a6c080,
tag_list=0x7f816001b040, type=<value optimized out>) at
bacon-video-widget-gst-0.10.c:1856
#18 0x00000000004520e4 in bvw_update_tags_dispatcher (user_data=0x27a7780) at
bacon-video-widget-gst-0.10.c:1879
#19 0x00007f8184bb96c2 in g_main_dispatch (context=0x285f490) at
/tmp/buildd/glib2.0-2.24.1/glib/gmain.c:1960
#20 IA__g_main_context_dispatch (context=0x285f490) at
/tmp/buildd/glib2.0-2.24.1/glib/gmain.c:2513
#21 0x00007f8184bbd538 in g_main_context_iterate (context=0x285f490,
block=<value optimized out>, dispatch=<value optimized out>, self=<value
optimized out>) at /tmp/buildd/glib2.0-2.24.1/glib/gmain.c:2591
#22 0x00007f8184bbda45 in IA__g_main_loop_run (loop=0x3b7ab50) at
/tmp/buildd/glib2.0-2.24.1/glib/gmain.c:2799
#23 0x00007f81874d3647 in IA__gtk_main () at
/tmp/buildd/gtk+2.0-2.20.1/gtk/gtkmain.c:1219
#24 0x000000000042455e in main (argc=1, argv=0x7fff460d78b8) at totem.c:299

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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