After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 685726 - audioencoder: Timestamp and buffer tracking not threadsafe
audioencoder: Timestamp and buffer tracking not threadsafe
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal critical
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2012-10-08 14:21 UTC by Sebastian Dröge (slomo)
Modified: 2018-11-03 11:22 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Sebastian Dröge (slomo) 2012-10-08 14:21:04 UTC
The audio decoder base class passes buffers from gst_adapter_map() to the subclass via handle_frame(), and flushes them from the adapter in finish_frame(). For elements that have a different streaming thread for the srcpad and call finish_frame() from a different thread (gst-omx, gst-amc, probably others) this means that the subclass can be in handle_frame() using the mapped data while the srcpad streaming thread is doing finish_frame() for another frame and flushing data from the adapter.

This can cause usage of freed memory in handle_frame() and most likely also breaks timestamp tracking in interesting ways.
Comment 1 Edward Hervey 2018-05-06 08:43:06 UTC
Sebastian, still valid ? Still want to keep this open ?
Comment 2 Sebastian Dröge (slomo) 2018-05-06 15:09:06 UTC
Still valid, but I don't think we can do anything about it other than making a new base class

I'd keep this open to have a reference to point people at whenever they run into problems related to it.
Comment 3 GStreamer system administrator 2018-11-03 11:22:10 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/73.