GNOME Bugzilla – Bug 673515
atomicqueue: backport patches from 0.11 branch
Last modified: 2012-04-07 15:31:21 UTC
Please apply these two commits: http://cgit.freedesktop.org/gstreamer/gstreamer/diff/gst/gstatomicqueue.c?id=61e8fa0dc5dc5efb3b55101861df1f891bb64694 http://cgit.freedesktop.org/gstreamer/gstreamer/commit/?id=ed29f33ddb6f9a10ff75a53adae525aa165a6ecf to gstreamer 0.10 too, thanks
Done: commit f251e3073b75c9f82333fc102e391b77aae2ee3a Author: Wim Taymans <wim.taymans@collabora.co.uk> Date: Fri Feb 24 15:24:42 2012 +0100 atomicqueue: fix race After a writer has written to its reserved write location, it can only make the location available for reading if all of the writers with lower locations have finished. commit 930c0197218b216ba78a04750fc4706f31aa7d98 Author: Wim Taymans <wim.taymans@collabora.co.uk> Date: Fri Feb 24 12:51:24 2012 +0100 atomicqueue: fix subtle race Fix a race where the reader would see the updated the tail pointer before the write could write the data into the queue. Fix this by having a separate reader tail pointer that is only incremented after the writer wrote the data.