[Bug 768482] shmsrc: stopping shmsrc after socket failure hangs on READY

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Wed Jul 6 12:37:24 UTC 2016


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

Marcin Lewandowski <marcin at saepia.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|gst-plugins-bad             |gstreamer (core)

--- Comment #1 from Marcin Lewandowski <marcin at saepia.net> ---
It appears to block the thread.

Stack trace:

(gdb) thr a a bt

Thread 8 (Thread 0x7f9bf37fe700 (LWP 11831)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f9c1796128c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f9c115b427a in gst_base_src_set_flushing
(basesrc=basesrc at entry=0xc94bb0, flushing=flushing at entry=1,
live_play=live_play at entry=0, playing=playing at entry=0x0) at gstbasesrc.c:3588
#3  0x00007f9c115b45f2 in gst_base_src_stop (basesrc=basesrc at entry=0xc94bb0) at
gstbasesrc.c:3535
#4  0x00007f9c115bba65 in gst_base_src_activate_push (pad=<optimized out>,
active=0, parent=0xc94bb0) at gstbasesrc.c:3709
#5  gst_base_src_activate_mode (pad=<optimized out>, parent=0xc94bb0,
mode=GST_PAD_MODE_PUSH, active=0) at gstbasesrc.c:3781
#6  0x00007f9c170353c5 in activate_mode_internal (pad=pad at entry=0xcaf030,
parent=parent at entry=0xc94bb0, mode=mode at entry=GST_PAD_MODE_PUSH,
active=active at entry=0) at gstpad.c:1175
#7  0x00007f9c17035cbd in gst_pad_set_active (pad=pad at entry=0xcaf030, active=0)
at gstpad.c:1077
#8  0x00007f9c17017ccd in activate_pads (vpad=<optimized out>,
ret=0x7f9bf37fd1a0, active=0x7f9bf37fd1ec) at gstelement.c:2736
#9  0x00007f9c1702813c in gst_iterator_fold (it=it at entry=0xcca670,
func=func at entry=0x7f9c17017cb0 <activate_pads>, ret=ret at entry=0x7f9bf37fd1a0,
user_data=user_data at entry=0x7f9bf37fd1ec) at gstiterator.c:614
#10 0x00007f9c1701812a in iterator_activate_fold_with_resync
(iter=iter at entry=0xcca670, user_data=user_data at entry=0x7f9bf37fd1ec,
func=0x7f9c17017cb0 <activate_pads>) at gstelement.c:2760
#11 0x00007f9c17019ebf in gst_element_pads_activate
(element=element at entry=0xc94bb0, active=active at entry=0) at gstelement.c:2796
#12 0x00007f9c1701a1e6 in gst_element_change_state_func (element=0xc94bb0,
transition=<optimized out>) at gstelement.c:2870
#13 0x00007f9c115b993e in gst_base_src_change_state (element=0xc94bb0,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstbasesrc.c:3818
#14 0x00007f9c086a0970 in gst_shm_src_change_state (element=0xc94bb0,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstshmsrc.c:395
#15 0x00007f9c1701c0de in gst_element_change_state
(element=element at entry=0xc94bb0,
transition=transition at entry=GST_STATE_CHANGE_PAUSED_TO_READY) at
gstelement.c:2648
#16 0x00007f9c1701c857 in gst_element_set_state_func (element=0xc94bb0,
state=GST_STATE_READY) at gstelement.c:2602
#17 0x00007f9c16ffb2b5 in gst_bin_element_set_state (next=GST_STATE_READY,
current=GST_STATE_PAUSED, start_time=0, base_time=5391000423597,
element=0xc94bb0, bin=0xccd3c0) at gstbin.c:2414
#18 gst_bin_change_state_func (element=0xccd3c0,
transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstbin.c:2756
#19 0x00007f9c1701c0de in gst_element_change_state
(element=element at entry=0xccd3c0, transition=GST_STATE_CHANGE_PAUSED_TO_READY)
at gstelement.c:2648
#20 0x00007f9c1701cb4f in gst_element_continue_state
(element=element at entry=0xccd3c0, ret=ret at entry=GST_STATE_CHANGE_SUCCESS) at
gstelement.c:2356
#21 0x00007f9c1701c3c7 in gst_element_change_state
(element=element at entry=0xccd3c0,
transition=transition at entry=GST_STATE_CHANGE_PLAYING_TO_PAUSED) at
gstelement.c:2687
#22 0x00007f9c1701c857 in gst_element_set_state_func (element=0xccd3c0,
state=GST_STATE_NULL) at gstelement.c:2602
#23 0x00007f9c1847b480 in myapp_common_input_bin_remove_input (self=0xc70040,
model=0xcb1660 "Media.Input.Stream.Test", id=0xcbba70 "123") at
input_bin.c:1102
#24 0x00007f9c17bf41d4 in ?? () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#25 0x00007f9c17c0e9a6 in g_signal_emit_valist () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#26 0x00007f9c17c0f555 in g_signal_emit_by_name () from
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#27 0x00007f9c1847a7dd in
myapp_common_input_bin_input_branch_bin_real_handle_message (base=0xccd3c0,
message=0xcb4c30) at input_bin.c:1697
#28 0x00007f9c16ff3328 in bin_bus_handler (bus=bus at entry=0xbae160,
message=message at entry=0xcb4c30, bin=bin at entry=0xccd3c0) at gstbin.c:3090
#29 0x00007f9c17003233 in gst_bus_post (bus=bus at entry=0xbae160,
message=message at entry=0xcb4c30) at gstbus.c:327
#30 0x00007f9c17018298 in gst_element_post_message_default (element=0xc94bb0,
message=0xcb4c30) at gstelement.c:1726
#31 0x00007f9c1701b243 in gst_element_post_message
(element=element at entry=0xc94bb0, message=0xcb4c30) at gstelement.c:1769
#32 0x00007f9c1701b729 in gst_element_message_full (element=0xc94bb0,
type=GST_MESSAGE_ERROR, domain=2167, code=9, text=<optimized out>,
debug=<optimized out>, file=0x7f9c086a33a7 "gstshmsrc.c",
function=0x7f9c086a3760 <__func__.20153> "gst_shm_src_create", line=343) at
gstelement.c:1899
#33 0x00007f9c0869fee4 in gst_shm_src_create (psrc=0xc94bb0,
outbuf=0x7f9bf37fdc08) at gstshmsrc.c:360
#34 0x00007f9c115b6e66 in gst_base_src_get_range (src=src at entry=0xc94bb0,
offset=offset at entry=18446744073709551615, length=4096,
buf=buf at entry=0x7f9bf37fdce8) at gstbasesrc.c:2460
#35 0x00007f9c115b8a47 in gst_base_src_loop (pad=0xcaf030) at gstbasesrc.c:2736
#36 0x00007f9c17063db1 in gst_task_func (task=0xb8e950) at gsttask.c:332
#37 0x00007f9c1794455e in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007f9c17943bc5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#39 0x00007f9c176bd6fa in start_thread (arg=0x7f9bf37fe700) at
pthread_create.c:333
#40 0x00007f9c173f3b5d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 7 (Thread 0x7f9c092ae700 (LWP 11809)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f9c17961c2f in g_cond_wait () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f9c115cd8e2 in gst_data_queue_push (queue=0xb24d10,
item=item at entry=0x7f9bf804cd60) at gstdataqueue.c:520
#3  0x00007f9c11813ab5 in gst_multi_queue_chain (pad=<optimized out>,
parent=<optimized out>, buffer=0x7f9bf804d370) at gstmultiqueue.c:1890
#4  0x00007f9c170314af in gst_pad_chain_data_unchecked (data=0x7f9bf804d370,
type=4112, pad=0xc836b0) at gstpad.c:4176
#5  gst_pad_push_data (pad=pad at entry=0xc83470, type=type at entry=4112,
data=data at entry=0x7f9bf804d370) at gstpad.c:4428
#6  0x00007f9c170393c3 in gst_pad_push (pad=pad at entry=0xc83470,
buffer=0x7f9bf804d370) at gstpad.c:4547
#7  0x00007f9c115b8c95 in gst_base_src_loop (pad=0xc83470) at gstbasesrc.c:2850
#8  0x00007f9c17063db1 in gst_task_func (task=0xb8e4d0) at gsttask.c:332
#9  0x00007f9c1794455e in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#10 0x00007f9c17943bc5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#11 0x00007f9c176bd6fa in start_thread (arg=0x7f9c092ae700) at
pthread_create.c:333
#12 0x00007f9c173f3b5d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 6 (Thread 0x7f9c09aaf700 (LWP 11808)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f9c17961c2f in g_cond_wait () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f9c10a8c3f3 in gst_aggregator_pad_chain_internal (self=0xc811e0,
aggpad=0xca91e0, buffer=0x7f9c00031410, head=1) at gstaggregator.c:2187
#3  0x00007f9c170314af in gst_pad_chain_data_unchecked (data=0x7f9c00031410,
type=4112, pad=0xca91e0) at gstpad.c:4176
#4  gst_pad_push_data (pad=pad at entry=0xc838f0, type=type at entry=4112,
data=data at entry=0x7f9c00031410) at gstpad.c:4428
#5  0x00007f9c170393c3 in gst_pad_push (pad=0xc838f0,
buffer=buffer at entry=0x7f9c00031410) at gstpad.c:4547
#6  0x00007f9c11815104 in gst_single_queue_push_one (allow_drop=<synthetic
pointer>, object=0x7f9c00031410, sq=0xca4ab0, mq=0xc730f0) at
gstmultiqueue.c:1417
#7  gst_multi_queue_loop (pad=<optimized out>) at gstmultiqueue.c:1701
#8  0x00007f9c17063db1 in gst_task_func (task=0xb8e3b0) at gsttask.c:332
#9  0x00007f9c1794455e in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#10 0x00007f9c17943bc5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#11 0x00007f9c176bd6fa in start_thread (arg=0x7f9c09aaf700) at
pthread_create.c:333
#12 0x00007f9c173f3b5d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 5 (Thread 0x7f9c0a2b0700 (LWP 11807)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f9c17961c2f in g_cond_wait () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f9c11819066 in gst_queue_chain_buffer_or_list (parent=0xc9a080,
obj=0x7f9bf8081e70, is_list=0, pad=<optimized out>) at gstqueue.c:1219
#3  0x00007f9c170314af in gst_pad_chain_data_unchecked (data=0x7f9bf8081e70,
type=4112, pad=0xc82ff0) at gstpad.c:4176
#4  gst_pad_push_data (pad=pad at entry=0xc82db0, type=type at entry=4112,
data=data at entry=0x7f9bf8081e70) at gstpad.c:4428
#5  0x00007f9c170393c3 in gst_pad_push (pad=0xc82db0, buffer=0x7f9bf8081e70) at
gstpad.c:4547
#6  0x00007f9c115bd28d in gst_base_transform_chain (pad=<optimized out>,
parent=0xc973d0, buffer=<optimized out>) at gstbasetransform.c:2369
#7  0x00007f9c170314af in gst_pad_chain_data_unchecked (data=0x7f9bf8081e70,
type=4112, pad=0xc82b70) at gstpad.c:4176
#8  gst_pad_push_data (pad=pad at entry=0xc82930, type=type at entry=4112,
data=data at entry=0x7f9bf8081e70) at gstpad.c:4428
#9  0x00007f9c170393c3 in gst_pad_push (pad=0xc82930, buffer=0x7f9bf8081e70) at
gstpad.c:4547
#10 0x00007f9c115bd28d in gst_base_transform_chain (pad=<optimized out>,
parent=0xc940d0, buffer=<optimized out>) at gstbasetransform.c:2369
#11 0x00007f9c170314af in gst_pad_chain_data_unchecked (data=0x7f9bf8081e70,
type=4112, pad=0xc826f0) at gstpad.c:4176
#12 gst_pad_push_data (pad=pad at entry=0xc824b0, type=type at entry=4112,
data=data at entry=0x7f9bf8081e70) at gstpad.c:4428
#13 0x00007f9c170393c3 in gst_pad_push (pad=0xc824b0, buffer=0x7f9bf8081e70) at
gstpad.c:4547
#14 0x00007f9c115bd28d in gst_base_transform_chain (pad=<optimized out>,
parent=0xc86a60, buffer=<optimized out>) at gstbasetransform.c:2369
#15 0x00007f9c170314af in gst_pad_chain_data_unchecked (data=0x7f9c00031a70,
type=4112, pad=0xc82270) at gstpad.c:4176
#16 gst_pad_push_data (pad=pad at entry=0xc82030, type=type at entry=4112,
data=data at entry=0x7f9c00031a70) at gstpad.c:4428
#17 0x00007f9c170393c3 in gst_pad_push (pad=0xc82030,
buffer=buffer at entry=0x7f9c00031a70) at gstpad.c:4547
#18 0x00007f9c10a8e7a8 in gst_aggregator_finish_buffer
(self=self at entry=0xc811e0, buffer=0x7f9c00031a70) at gstaggregator.c:579
#19 0x00007f9c11177e76 in gst_audio_aggregator_aggregate (agg=0xc811e0,
timeout=0) at gstaudioaggregator.c:1357
#20 0x00007f9c10a8ee73 in gst_aggregator_aggregate_func (self=0xc811e0) at
gstaggregator.c:816
#21 0x00007f9c17063db1 in gst_task_func (task=0xb8e290) at gsttask.c:332
#22 0x00007f9c1794455e in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#23 0x00007f9c17943bc5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#24 0x00007f9c176bd6fa in start_thread (arg=0x7f9c0a2b0700) at
pthread_create.c:333
#25 0x00007f9c173f3b5d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7f9c0aab1700 (LWP 11806)):
#0  0x00007f9c176c6a3f in __libc_send (fd=15, buf=0x7f9bfc002e80, n=96,
flags=0) at ../sysdeps/unix/sysv/linux/x86_64/send.c:26
#1  0x00007f9c0b569dea in _shout_sock_write_bytes () from
/usr/lib/x86_64-linux-gnu/libshout.so.3
#2  0x00007f9c0b566387 in ?? () from /usr/lib/x86_64-linux-gnu/libshout.so.3
#3  0x00007f9c0b566806 in shout_send_raw () from
/usr/lib/x86_64-linux-gnu/libshout.so.3
#4  0x00007f9c0b568f8b in ?? () from /usr/lib/x86_64-linux-gnu/libshout.so.3
#5  0x00007f9c0b77504b in gst_shout2send_render (basesink=0xcb5d50,
buf=0x7f9c0003a040) at gstshout2.c:661
#6  0x00007f9c115b208a in gst_base_sink_chain_unlocked
(basesink=basesink at entry=0xcb5d50, obj=obj at entry=0x7f9c0003a040,
is_list=is_list at entry=0, pad=<optimized out>) at gstbasesink.c:3532
#7  0x00007f9c115b3510 in gst_base_sink_chain_main (basesink=0xcb5d50,
pad=<optimized out>, obj=0x7f9c0003a040, is_list=0) at gstbasesink.c:3655
#8  0x00007f9c170314af in gst_pad_chain_data_unchecked (data=0x7f9c0003a040,
type=4112, pad=0xcae070) at gstpad.c:4176
#9  gst_pad_push_data (pad=pad at entry=0xc83d70, type=type at entry=4112,
data=data at entry=0x7f9c0003a040) at gstpad.c:4428
#10 0x00007f9c170393c3 in gst_pad_push (pad=0xc83d70, buffer=0x7f9c0003a040) at
gstpad.c:4547
#11 0x00007f9c10f41ac4 in gst_audio_encoder_finish_frame
(enc=enc at entry=0xcace80, buf=0x7f9c0003a040, samples=<optimized out>,
samples at entry=1152) at gstaudioencoder.c:1001
#12 0x00007f9c0bbf1d02 in gst_lamemp3enc_finish_frames
(lame=lame at entry=0xcace80) at gstlamemp3enc.c:692
#13 0x00007f9c0bbf2147 in gst_lamemp3enc_handle_frame (enc=0xcace80,
in_buf=0x7f9bf80c1770) at gstlamemp3enc.c:807
#14 0x00007f9c10f426cd in gst_audio_encoder_push_buffers
(enc=enc at entry=0xcace80, force=force at entry=0) at gstaudioencoder.c:1127
#15 0x00007f9c10f437f8 in gst_audio_encoder_chain (pad=<optimized out>,
parent=0xcace80, buffer=0x7f9bfc01de70) at gstaudioencoder.c:1346
#16 0x00007f9c170314af in gst_pad_chain_data_unchecked (data=0x7f9bfc01de70,
type=4112, pad=0xc83b30) at gstpad.c:4176
#17 gst_pad_push_data (pad=pad at entry=0xca0060, type=type at entry=4112,
data=data at entry=0x7f9bfc01de70) at gstpad.c:4428
#18 0x00007f9c170393c3 in gst_pad_push (pad=pad at entry=0xca0060,
buffer=buffer at entry=0x7f9bfc01de70) at gstpad.c:4547
#19 0x00007f9c17022473 in gst_proxy_pad_chain_default (pad=0xca21c0,
parent=<optimized out>, buffer=0x7f9bfc01de70) at gstghostpad.c:126
#20 0x00007f9c170314af in gst_pad_chain_data_unchecked (data=0x7f9bfc01de70,
type=4112, pad=0xca21c0) at gstpad.c:4176
#21 gst_pad_push_data (pad=pad at entry=0xc83230, type=type at entry=4112,
data=data at entry=0x7f9bfc01de70) at gstpad.c:4428
#22 0x00007f9c170393c3 in gst_pad_push (pad=0xc83230,
buffer=buffer at entry=0x7f9bfc01de70) at gstpad.c:4547
#23 0x00007f9c11818979 in gst_queue_push_one (queue=0xc9a080) at
gstqueue.c:1356
#24 gst_queue_loop (pad=<optimized out>) at gstqueue.c:1503
#25 0x00007f9c17063db1 in gst_task_func (task=0xb8e170) at gsttask.c:332
#26 0x00007f9c1794455e in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#27 0x00007f9c17943bc5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#28 0x00007f9c176bd6fa in start_thread (arg=0x7f9c0aab1700) at
pthread_create.c:333
#29 0x00007f9c173f3b5d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7f9c12246700 (LWP 11805)):
#0  0x00007f9c173e7e8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f9c1791d39c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f9c1791d722 in g_main_loop_run () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f9c17f1b916 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4  0x00007f9c17943bc5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f9c176bd6fa in start_thread (arg=0x7f9c12246700) at
pthread_create.c:333
#6  0x00007f9c173f3b5d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7f9c12a47700 (LWP 11804)):
#0  0x00007f9c173e7e8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f9c1791d39c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f9c1791d4ac in g_main_context_iteration () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f9c1791d4e9 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f9c17943bc5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f9c176bd6fa in start_thread (arg=0x7f9c12a47700) at
pthread_create.c:333
#6  0x00007f9c173f3b5d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f9c1888c800 (LWP 11789)):
#0  0x00007f9c173e7e8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f9c1791d39c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f9c1791d722 in g_main_loop_run () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f9c181e38f9 in radio_kit_common_app_template_base_start_real
(self=0xb1c0a0) at app/template/base.c:682
#4  0x0000000000401ab8 in myapp_media_output_stream_rk_diffusor_main
(argv=0x7ffee1ad5428, argv_length1=1) at main.c:38
#5  0x00007f9c1730d830 in __libc_start_main (main=0x401980 <main>, argc=1,
argv=0x7ffee1ad5428, init=<optimized out>, fini=<optimized out>,
rtld_fini=<optimized out>, stack_end=0x7ffee1ad5418) at ../csu/libc-start.c:291
#6  0x00000000004019b9 in _start ()

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