[gstreamer-bugs] [Bug 606435] New: gsttee not threadsafe

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Fri Jan 8 10:58:49 PST 2010


https://bugzilla.gnome.org/show_bug.cgi?id=606435
  GStreamer | gstreamer (core) | unspecified

           Summary: gsttee not threadsafe
    Classification: Desktop
           Product: GStreamer
           Version: unspecified
        OS/Version: All
            Status: UNCONFIRMED
          Severity: critical
          Priority: Normal
         Component: gstreamer (core)
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: havard.graff at tandberg.com
         QAContact: gstreamer-bugs at lists.sourceforge.net
      GNOME target: ---
     GNOME version: ---


Created an attachment (id=151052)
 View: https://bugzilla.gnome.org/attachment.cgi?id=151052
 Review: https://bugzilla.gnome.org/review?bug=606435&attachment=151052

patch

The race is basically that in release_pad, the allocpad is "padA", and the pad
being freed is "padB". Now, while just having completed the check "is allocpad
(padA) == the pad being freed (padB), the function will let go of the
OBJECT_LOCK(), and go on to take the DYN_LOCK(), and start to free the pad.
However, in this "lock-gap", allocpad could be set to "padB", and this will
crash horribly next time allocpad is tried used, since it now will be pointing
to the freed padB.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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