[Bug 751032] New: SDL example sdlshare2 deadlocks

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Tue Jun 16 04:11:55 PDT 2015


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

            Bug ID: 751032
           Summary: SDL example sdlshare2 deadlocks
    Classification: Platform
           Product: GStreamer
           Version: git master
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gst-plugins-bad
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: thaytan at noraisin.net
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

The tests/examples/gl/sdl/sdlshare2 example showing glimagesink integration
doesn't work any more. Everything ends up sleeping on gconds and never wakes up
again.

Thread 4 (Thread 0x7fffed715700 (LWP 26144)):
#0  0x0000003448cf666d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x000000344b049dbc in g_main_context_iterate (priority=2147483647, n_fds=1,
fds=0x7fffe8001240, timeout=<optimized out>, context=0x7fffe80008e0) at
gmain.c:4103
#2  0x000000344b049dbc in g_main_context_iterate (context=0x7fffe80008e0,
block=block at entry=1, dispatch=dispatch at entry=1, self=<optimized out>) at
gmain.c:3803
#3  0x000000344b04a142 in g_main_loop_run (loop=0x7fffe8001220) at gmain.c:4002
#4  0x00007ffff7d8cafc in gst_gl_window_run_navigation (window=<optimized out>)
at gstglwindow.c:585
#5  0x00007ffff7d8d771 in gst_gl_window_navigation_thread (window=0x11460e0
[GstGLWindowX11]) at gstglwindow.c:981
#6  0x000000344b0710a5 in g_thread_proxy (data=0xfaaf70) at gthread.c:764
#7  0x0000003449007555 in start_thread (arg=0x7fffed715700) at
pthread_create.c:333
#8  0x0000003448d01f3d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7fffecf14700 (LWP 26145)):
#0  0x0000003448cfc239 in syscall () at
../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x000000344b08f02f in g_cond_wait (cond=cond at entry=0x6042c0 <app_cond>,
mutex=mutex at entry=0x6042d0 <app_lock>) at gthread-posix.c:1395
#2  0x00000000004024e1 in on_client_draw (glsink=<optimized out>,
context=<optimized out>, sample=0xdb5600, data=<optimized out>) at
sdlshare2.c:193
#3  0x000000344b805db0 in ffi_call_unix64 () at /lib64/libffi.so.6
#4  0x000000344b805818 in ffi_call () at /lib64/libffi.so.6
#9  0x000000344c82a29f in <emit signal ??? on instance 0x1127020
[GstGLImageSinkBin]> (instance=<optimized out>, signal_id=<optimized out>,
detail=detail at entry=0)
    at gsignal.c:3361
    #5  0x000000344c8104f9 in g_cclosure_marshal_generic (closure=0x1141820,
return_gvalue=0x7fffecf13250, n_param_values=<optimized out>,
param_values=0x7fffecf13110, invocation_hint=<optimized out>, marshal_data=0x0)
at gclosure.c:1448
    #6  0x000000344c80fcd5 in g_closure_invoke (closure=0x1141820,
return_value=return_value at entry=0x7fffecf13250, n_param_values=3,
param_values=param_values at entry=0x7fffecf13110,
invocation_hint=invocation_hint at entry=0x7fffecf13090) at gclosure.c:768
    #7  0x000000344c821539 in signal_emit_unlocked_R
(node=node at entry=0x1125dc0, detail=detail at entry=0,
instance=instance at entry=0x1127020,
emission_return=emission_return at entry=0x7fffecf13250,
instance_and_params=instance_and_params at entry=0x7fffecf13110) at gsignal.c:3549
    #8  0x000000344c829ae2 in g_signal_emit_valist (instance=<optimized out>,
signal_id=<optimized out>, detail=<optimized out>,
var_args=var_args at entry=0x7fffecf13300)
    at gsignal.c:3315
#10 0x00007fffee452961 in _on_client_draw (sink=<optimized out>,
context=<optimized out>, sample=<optimized out>, data=<optimized out>) at
gstglimagesink.c:177
#11 0x000000344b805db0 in ffi_call_unix64 () at /lib64/libffi.so.6
#12 0x000000344b805818 in ffi_call () at /lib64/libffi.so.6
#17 0x000000344c82a29f in <emit signal ??? on instance 0x1136210
[GstGLImageSink]> (instance=instance at entry=0x1136210, signal_id=<optimized
out>, detail=detail at entry=0)
    at gsignal.c:3361
    #13 0x000000344c8104f9 in g_cclosure_marshal_generic (closure=0x11311e0,
return_gvalue=0x7fffecf13970, n_param_values=<optimized out>,
param_values=0x7fffecf13830, invocation_hint=<optimized out>, marshal_data=0x0)
at gclosure.c:1448
    #14 0x000000344c80fcd5 in g_closure_invoke (closure=0x11311e0,
return_value=return_value at entry=0x7fffecf13970, n_param_values=3,
param_values=param_values at entry=0x7fffecf13830,
invocation_hint=invocation_hint at entry=0x7fffecf137b0) at gclosure.c:768
    #15 0x000000344c821539 in signal_emit_unlocked_R
(node=node at entry=0x11306a0, detail=detail at entry=0,
instance=instance at entry=0x1136210,
emission_return=emission_return at entry=0x7fffecf13970,
instance_and_params=instance_and_params at entry=0x7fffecf13830) at gsignal.c:3549
    #16 0x000000344c829ae2 in g_signal_emit_valist (instance=<optimized out>,
signal_id=<optimized out>, detail=<optimized out>,
var_args=var_args at entry=0x7fffecf13a20)
    at gsignal.c:3315
#18 0x00007fffee455818 in gst_glimage_sink_on_draw (gl_sink=0x1136210
[GstGLImageSink]) at gstglimagesink.c:1813
#19 0x00007ffff7d96005 in gst_gl_window_x11_draw_unlocked (window=0x11460e0
[GstGLWindowX11]) at gstglwindow_x11.c:396
#20 0x00007ffff7d96075 in draw_cb (data=0x11460e0) at gstglwindow_x11.c:433
#21 0x00007ffff7d8c378 in _run_message_sync (message=0x7fffe7ffe4d0) at
gstglwindow.c:638
#22 0x00007ffff7d8c312 in _run_message_async (message=0x7fffdc018a40) at
gstglwindow.c:707
#23 0x000000344b049a8a in g_main_context_dispatch (context=0x110dad0) at
gmain.c:3122
#24 0x000000344b049a8a in g_main_context_dispatch
(context=context at entry=0x110dad0) at gmain.c:3737
#25 0x000000344b049e20 in g_main_context_iterate (context=0x110dad0,
block=block at entry=1, dispatch=dispatch at entry=1, self=<optimized out>) at
gmain.c:3808
#26 0x000000344b04a142 in g_main_loop_run (loop=0x1141b40) at gmain.c:4002
#27 0x00007ffff7d77cf2 in gst_gl_context_create_thread (context=0x1145090
[GstGLContextGLX]) at gstglcontext.c:1350
#28 0x000000344b0710a5 in g_thread_proxy (data=0x1129b70) at gthread.c:764
#29 0x0000003449007555 in start_thread (arg=0x7fffecf14700) at
pthread_create.c:333
#30 0x0000003448d01f3d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fffe7fff700 (LWP 26146)):
#0  0x0000003448cfc239 in syscall () at
../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x000000344b08f02f in g_cond_wait (cond=cond at entry=0x7fffe7ffe4d8,
mutex=mutex at entry=0x7fffe7ffe4d0) at gthread-posix.c:1395
#2  0x00007ffff7d8ce2b in gst_gl_window_default_send_message (window=0x11460e0
[GstGLWindowX11], callback=<optimized out>, data=<optimized out>) at
gstglwindow.c:664
#3  0x00007fffee454b1d in gst_glimage_sink_redisplay
(gl_sink=gl_sink at entry=0x1136210 [GstGLImageSink]) at gstglimagesink.c:1958
#4  0x00007fffee454f60 in gst_glimage_sink_show_frame (vsink=<optimized out>,
buf=<optimized out>) at gstglimagesink.c:1413
#5  0x00007ffff7695685 in gst_base_sink_do_preroll (sink=sink at entry=0x1136210
[GstGLImageSink], obj=obj at entry=0x110f660) at gstbasesink.c:2228
#6  0x00007ffff7696233 in gst_base_sink_do_sync
(basesink=basesink at entry=0x1136210 [GstGLImageSink], obj=obj at entry=0x110f660,
late=late at entry=0x7fffe7ffe7a8, step_end=step_end at entry=0x7fffe7ffe7ac) at
gstbasesink.c:2447
#7  0x00007ffff7697532 in gst_base_sink_chain_unlocked
(basesink=basesink at entry=0x1136210 [GstGLImageSink], obj=obj at entry=0x110f660,
is_list=is_list at entry=0, pad=<optimized out>)
    at gstbasesink.c:3421
#8  0x00007ffff7698b40 in gst_base_sink_chain_main (basesink=0x1136210
[GstGLImageSink], pad=<optimized out>, obj=0x110f660, is_list=0) at
gstbasesink.c:3575
#9  0x00007ffff73b91cd in gst_pad_push_data (data=0x110f660, type=4112,
pad=0x1116b80 [GstPad]) at gstpad.c:4038
#10 0x00007ffff73b91cd in gst_pad_push_data (pad=0x1116940 [GstPad],
type=type at entry=4112, data=0x110f660) at gstpad.c:4271
#11 0x00007ffff73c0876 in gst_pad_push (pad=<optimized out>, buffer=<optimized
out>) at gstpad.c:4383
#12 0x00007ffff76a5567 in gst_base_transform_chain (pad=<optimized out>,
parent=<optimized out>, buffer=<optimized out>) at gstbasetransform.c:2367
#13 0x00007ffff73b91cd in gst_pad_push_data (data=0x110f660, type=4112,
pad=0x1116700 [GstPad]) at gstpad.c:4038
#14 0x00007ffff73b91cd in gst_pad_push_data (pad=0x11164c0 [GstPad],
type=type at entry=4112, data=0x110f660) at gstpad.c:4271
#15 0x00007ffff73c0876 in gst_pad_push (pad=<optimized out>, buffer=<optimized
out>) at gstpad.c:4383
#16 0x00007ffff76a5567 in gst_base_transform_chain (pad=<optimized out>,
parent=<optimized out>, buffer=<optimized out>) at gstbasetransform.c:2367
#17 0x00007ffff73b91cd in gst_pad_push_data (data=0x110f660, type=4112,
pad=0x1116280 [GstPad]) at gstpad.c:4038
#18 0x00007ffff73b91cd in gst_pad_push_data (pad=pad at entry=0x11341d0
[GstProxyPad], type=type at entry=4112, data=data at entry=0x110f660) at
gstpad.c:4271
#19 0x00007ffff73c0876 in gst_pad_push (pad=pad at entry=0x11341d0 [GstProxyPad],
buffer=buffer at entry=0x110f660) at gstpad.c:4383
#20 0x00007ffff73aa653 in gst_proxy_pad_chain_default (pad=0x1132050
[GstGhostPad], parent=<optimized out>, buffer=0x110f660) at gstghostpad.c:126
#21 0x00007ffff73b91cd in gst_pad_push_data (data=0x110f660, type=4112,
pad=0x1132050 [GstGhostPad]) at gstpad.c:4038
#22 0x00007ffff73b91cd in gst_pad_push_data (pad=0x1117000 [GstPad],
type=type at entry=4112, data=0x110f660) at gstpad.c:4271
#23 0x00007ffff73c0876 in gst_pad_push (pad=<optimized out>, buffer=<optimized
out>) at gstpad.c:4383
#24 0x00007ffff76a5567 in gst_base_transform_chain (pad=<optimized out>,
parent=<optimized out>, buffer=<optimized out>) at gstbasetransform.c:2367
#25 0x00007ffff73b91cd in gst_pad_push_data (data=0x110f660, type=4112,
pad=0x1116dc0 [GstPad]) at gstpad.c:4038
#26 0x00007ffff73b91cd in gst_pad_push_data (pad=pad at entry=0x1116040 [GstPad],
type=type at entry=4112, data=0x110f660) at gstpad.c:4271
#27 0x00007ffff73c0876 in gst_pad_push (pad=pad at entry=0x1116040 [GstPad],
buffer=<optimized out>) at gstpad.c:4383
#28 0x00007ffff769e305 in gst_base_src_loop (pad=0x1116040 [GstPad]) at
gstbasesrc.c:2845
#29 0x00007ffff73e89e1 in gst_task_func (task=0x1149050 [GstTask]) at
gsttask.c:331
#30 0x000000344b071a3e in g_thread_pool_thread_proxy (data=<optimized out>) at
gthreadpool.c:307
#31 0x000000344b0710a5 in g_thread_proxy (data=0x1129940) at gthread.c:764
#32 0x0000003449007555 in start_thread (arg=0x7fffe7fff700) at
pthread_create.c:333
#33 0x0000003448d01f3d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7ffff70bd800 (LWP 26140)):
#0  0x0000003448cfc239 in syscall () at
../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x000000344b08f02f in g_cond_wait (cond=cond at entry=0x7fffffffa138,
mutex=mutex at entry=0x7fffffffa130) at gthread-posix.c:1395
#2  0x00007ffff7d8ce2b in gst_gl_window_default_send_message (window=0x11460e0
[GstGLWindowX11], callback=<optimized out>, data=<optimized out>) at
gstglwindow.c:664
#3  0x00007ffff7d76c5b in gst_gl_context_thread_add (context=<optimized out>,
func=func at entry=0x7ffff7d78230 <_map_data_gl>, data=data at entry=0x7fffffffa1d0)
at gstglcontext.c:1637
#4  0x00007ffff7d77fde in _mem_map_full (mem=<optimized out>, info=<optimized
out>, size=<optimized out>) at gstglbasebuffer.c:356
#5  0x00007ffff73b3cf0 in gst_memory_map (mem=mem at entry=0x7fffdc00d020,
info=info at entry=0x7fffffffa4f8, flags=flags at entry=(GST_MAP_READ | unknown:
131072)) at gstmemory.c:303
#6  0x00007ffff73b4009 in gst_memory_make_mapped (mem=mem at entry=0x7fffdc00d020,
info=info at entry=0x7fffffffa4f8, flags=flags at entry=(GST_MAP_READ | unknown:
131072))
    at gstmemory.c:238
#7  0x00007ffff7388856 in gst_buffer_map_range (buffer=buffer at entry=0x110f660,
idx=0, length=1, info=info at entry=0x7fffffffa4f8,
flags=flags at entry=(GST_MAP_READ | unknown: 131072))
    at gstbuffer.c:1634
#8  0x00007ffff7900b79 in default_map (meta=0x113cd58, plane=<optimized out>,
info=0x7fffffffa4f8, data=0x7fffffffa4d8, stride=0x7fffffffa488,
flags=(GST_MAP_READ | unknown: 131072)) at gstvideometa.c:176
#9  0x00007ffff78fa9dd in gst_video_frame_map_id
(frame=frame at entry=0x7fffffffa420, info=info at entry=0x7fffffffa380,
buffer=buffer at entry=0x110f660, id=id at entry=-1, flags=flags at entry=(GST_MAP_READ
| unknown: 131072)) at video-frame.c:89
#10 0x00007ffff78fadad in gst_video_frame_map
(frame=frame at entry=0x7fffffffa420, info=info at entry=0x7fffffffa380,
buffer=buffer at entry=0x110f660, flags=flags at entry=(GST_MAP_READ | unknown:
131072)) at video-frame.c:186
#11 0x000000000040254c in DrawGLScene (sample=sample at entry=0xdb5600) at
sdlshare2.c:87
#12 0x0000000000402836 in executeCallback (data=0xdb5600) at sdlshare2.c:178
#13 0x000000344b049a8a in g_main_context_dispatch (context=0xacd6c0) at
gmain.c:3122
#14 0x000000344b049a8a in g_main_context_dispatch
(context=context at entry=0xacd6c0) at gmain.c:3737
#15 0x000000344b049e20 in g_main_context_iterate (context=0xacd6c0,
block=block at entry=1, dispatch=dispatch at entry=1, self=<optimized out>) at
gmain.c:3808
#16 0x000000344b04a142 in g_main_loop_run (loop=0xbdeb40) at gmain.c:4002
#17 0x0000000000402313 in main (argc=1, argv=0x7fffffffa978) at sdlshare2.c:369

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