[gstreamer-bugs] [Bug 602231] New: Deadlock between rtpjitterbuffer and gstrtpbin

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Nov 17 11:21:22 PST 2009


https://bugzilla.gnome.org/show_bug.cgi?id=602231
  GStreamer | gst-plugins-good | git

           Summary: Deadlock between rtpjitterbuffer and gstrtpbin
    Classification: Desktop
           Product: GStreamer
           Version: git
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins-good
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: tester at tester.ca
         QAContact: gstreamer-bugs at lists.sourceforge.net
      GNOME target: ---
     GNOME version: ---


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

patch to fix problem

Seems like a regression I introduced with f542f710c.

gst_rtp_jitter_buffer_get_clock_rate() emits "request-pt-map" with the JBUF
lock held, the handler in gstrtpbin calls get_pt_map() which takes the session
lock

while

farsight clears the pt map, which is done by gst_rtp_bin_clear_pt_map() which
takes the session lock and calls "clear-pt-map" on the jitterbuffer whose
handler takes the JBUF lock.

Patch releases jbuf lock before emitting signal.. And documents the subtle fact
that the clock-rate can only be set to a valid value with the streaming lock
held (but could be invalidated without it..). Fun, isn't it ?

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