[Bug 728502] ximagesrc has a serious shmem leak

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed May 21 08:56:37 PDT 2014


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

--- Comment #11 from Nicolas Dufresne <nicolas.dufresne at collabora.co.uk> 2014-05-21 15:56:30 UTC ---
This is not the definition of a buffer pool. The main idea of buffer pools (not
sure why this one haven't been ported to use GstBufferPool) is to prevent doing
allocation. It's base on the fact the if the pipeline needed N buffers at some
point, it is likely to need N again. And when that happens, you don't want to
go into slow path and reallocate stuff. Yes, buffer may remain unused for a
while. But remember this is X11 and the XImage and XShmImage are virtual
memory, which means it's never lost completely. And even if the XShmImage was
not virtual memory (there might be special ddx out there), it's the cost of
smooth streaming.

Also, you said "When all buffers returned back to plugin - they
are pooled." What's not correct here is that the buffer can be picked from the
pool at any time, and come back one by one at any time (and from any thread).
There is no "when all buffer returned" state.

The only reason we have this loop, is basically to cleanup buffers that were
allocated for the different resolution. Otherwise GStreamer crash if you modset
to a lower resolution.

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