[Gstreamer-bugs] [Bug 142813] New: - Deadlock in optimal scheduler
bugzilla-daemon at bugzilla.gnome.org
bugzilla-daemon at bugzilla.gnome.org
Wed May 19 18:26:59 PDT 2004
http://bugzilla.gnome.org/show_bug.cgi?id=142813
GStreamer | gstreamer (core) | Ver: 0.8.1
Summary: Deadlock in optimal scheduler
Product: GStreamer
Version: 0.8.1
Platform: Other
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gstreamer (core)
AssignedTo: gstreamer-maint at bugzilla.gnome.org
ReportedBy: dcm at acm.org
QAContact: gstreamer-maint at bugzilla.gnome.org
When a group gets scheduled by the non-cothread version of the optimal
scheduler, a "pre-run" and "post-run" function is executed for each element in
the group. However, if the group is altered during the iteration such that an
element is removed from that particular group, the post-run function is not
executed for that element. This causes a deadlock the next time the element is
iterated, because it's properties mutex has been locked by the pre-run function,
but never unlocked by the post-run function.
For example, this scenario would happen with this pipeline:
filesrc ! spider ! osssink
If we play a song until EOS, and then delete the spider element during the EOS
handler, both filesrc and osssink will be removed from the group. If we then
create a new spider and link it back together with the same filesrc and osssink,
the osssink and filesrc properties mutex's will deadlock the first time they are
iterated.
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
You are the QA contact for the bug, or are watching the QA contact.
More information about the Gstreamer-bugs
mailing list