[Bug 755169] New: dashdemux: can we have multiple seek events at the same time?

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Sep 17 09:51:38 PDT 2015


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

            Bug ID: 755169
           Summary: dashdemux: can we have multiple seek events at the
                    same time?
    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: florin.apostol at oregan.net
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

I don't know if 2 seek events can be received at the same time from 2 different
src pads. I see no reason why not. If it can happen, there is a problem.

Stopping of stream tasks is done by gst_adaptive_demux_stop_tasks and is done
without the GST_MANIFEST_LOCK taken. The gst_adaptive_demux_stop_tasks is
called when a seek event is received on a src pad. If 2 seek events are
received at the same time, 2 threads will execute gst_adaptive_demux_stop_tasks
at the same time, both trying to delete the same list of tasks.

I believe event handling should be serialised using GST_MANIFEST_LOCK, but this
will deadlock because during seek adaptive demux will flush all src pads, so it
will try to flush the element from which the second seek is coming. That
element would probably hold some locks and want to wait to finish the seek
operation first, so both elements will deadlock.

Can we have 2 seeks at the same time?

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