[Bug 784911] New: aggregate: chain_internal function called from two different threads for the same pad

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Jul 13 15:00:55 UTC 2017


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

            Bug ID: 784911
           Summary: aggregate: chain_internal function called from two
                    different threads for the same pad
    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: vivia at ahiru.eu
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

The muxer is proprietary so it's been edited out, but here's a backtrace I keep
getting when remuxing a specific file:


Thread 4 (Thread 0x7ffff11df700 (LWP 31461)):
#0  0x00007ffff6a521e9 in syscall ()
    at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007ffff73c65df in g_cond_wait (cond=0x555555a06920,
mutex=0x555555a06918) at ././glib/gthread-posix.c:1395
#2  0x00007ffff503589e in gst_aggregator_pad_chain_internal
(self=0x5555559781a0 [], aggpad=0x555555a06970 [], buffer=0x7fffd4013350,
head=1) at gstaggregator.c:2560
#3  0x00007ffff7b14fa2 in gst_pad_chain_data_unchecked (data=0x7fffd4013350,
type=4112, pad=0x555555a06970 []) at gstpad.c:4205
#4  0x00007ffff7b14fa2 in gst_pad_push_data (pad=pad at entry=0x5555559e5910
[GstPad], type=type at entry=4112, data=<optimized out>,
data at entry=0x7fffd4013350)
    at gstpad.c:4457
#5  0x00007ffff7b1d432 in gst_pad_push (pad=0x5555559e5910 [GstPad],
buffer=buffer at entry=0x7fffd4013350) at gstpad.c:4576
#6  0x00007ffff3f82a0f in gst_queue_push_one (queue=0x5555559da700 [GstQueue])
    at gstqueue.c:1365
#7  0x00007ffff3f82a0f in gst_queue_loop (pad=<optimized out>)
    at gstqueue.c:1517
#8  0x00007ffff7b483f1 in gst_task_func (task=0x5555559a5710 [GstTask])
    at gsttask.c:332
#9  0x00007ffff73a8eee in g_thread_pool_thread_proxy (data=<optimized out>)
    at ././glib/gthreadpool.c:307
#10 0x00007ffff73a84f5 in g_thread_proxy (data=0x5555559fa680)
    at ././glib/gthread.c:784
#11 0x00007ffff6d14494 in start_thread (arg=0x7ffff11df700)
    at pthread_create.c:333
#12 0x00007ffff6a56a8f in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

Thread 2 (Thread 0x7ffff21e1700 (LWP 31459)):
#0  0x00007ffff6a521e9 in syscall ()
    at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007ffff73c5c0c in g_mutex_lock_slowpath (mutex=0x555555a06930)
    at ././glib/gthread-posix.c:1313
#2  0x00007ffff73c6482 in g_mutex_lock (mutex=<optimized out>)
    at ././glib/gthread-posix.c:1337
#3  0x00007ffff5035195 in gst_aggregator_pad_chain_internal
(self=self at entry=0x5555559781a0 [], aggpad=aggpad at entry=0x555555a06970 [],
buffer=buffer at entry=0x7fffd40ffa60, head=head at entry=0) at gstaggregator.c:2512
#4  0x00007ffff5039556 in gst_aggregator_default_sink_event
(self=0x5555559781a0 [], aggpad=0x555555a06970 [], event=0x7fffd40d7440)
    at gstaggregator.c:1493
#5  0x00007ffff5c0d4a3 in gst_nbmxfmux_sink_event(GstAggregator*,
GstAggregatorPad*, GstEvent*) (aggregator=0x5555559781a0 [],
aggpad=0x555555a06970 [], event=0x7fffd40d7440) at libgstnbmxfmux.c:584
#6  0x00007ffff5033f8f in check_events (self=self at entry=0x5555559781a0 [],
pad=pad at entry=0x555555a06970 [], user_data=user_data at entry=0x0) at
gstaggregator.c:786
#7  0x00007ffff5036ecc in gst_aggregator_iterate_sinkpads
(self=self at entry=0x5555559781a0 [], func=func at entry=0x7ffff5033cc0
<check_events>, user_data=user_data at entry=0x0) at gstaggregator.c:392
#8  0x00007ffff5039c33 in gst_aggregator_aggregate_func (self=0x5555559781a0
[]) at gstaggregator.c:1105
#9  0x00007ffff7b483f1 in gst_task_func (task=0x5555559a54d0 [GstTask])
    at gsttask.c:332
#10 0x00007ffff73a8eee in g_thread_pool_thread_proxy (data=<optimized out>)
    at ././glib/gthreadpool.c:307
#11 0x00007ffff73a84f5 in g_thread_proxy (data=0x5555559fa720)
    at ././glib/gthread.c:784
#12 0x00007ffff6d14494 in start_thread (arg=0x7ffff21e1700)
    at pthread_create.c:333
#13 0x00007ffff6a56a8f in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

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