[Bug 661356] [gst-launch playbin2] leaks big chunks of memory

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Oct 18 03:56:59 PDT 2011


https://bugzilla.gnome.org/show_bug.cgi?id=661356
  GStreamer | gstreamer (core) | 0.10.x

--- Comment #11 from Ha Nguyen <hanguytv at gmail.com> 2011-10-18 10:56:54 UTC ---
(In reply to comment #10)
> git HEAD of all modules, or only GStreamer core?> 

I did pull the git HEAD of gstreamer, base, good, bad, ugly.


> What is the issue exactly? Top is not really a suitable means of measuring
> memory usage or leakage.
> 
> What would be more useful is a leak report made with
> 
>   $ G_SLICE=always-malloc valgrind --trace-children=yes --leak-check=yes
> --suppressions=gst.supp gst-launch-0.10 ...
> 
> 
> Also, an exact gst-launch-0.10 pipeline with a public URI would be useful, so
> we can double-check ourselves.
> 

The issue I noticed is after gst-launch did gst-deinit, the RSS memory that
gst-launch using reported from "top" still say the similar amount as it was
playing.  I also use the "free" command to check memory before playing and at
the point gst-deinit called. Same result.

It only be freed after gst-launch exits, while I expect it to be freed after
the pipeline unreffed.

The gst-launch pipeline I used is:
gst-launch-0.10 playbin2
uri="http://samples.mplayerhq.hu/HDTV/Day_after_Tomorrow.ts"
buffer-size=40000000 buffer-duration=0

valgind with your options only reports about 5K lost, but I guess this lost is
while the clip being played, not after the pipeline freed???: 

==26173== LEAK SUMMARY:
==26173==    definitely lost: 5,551 bytes in 1 blocks
==26173==    indirectly lost: 120 bytes in 10 blocks
==26173==      possibly lost: 38,127 bytes in 282 blocks
==26173==    still reachable: 95,363 bytes in 1,958 blocks
==26173==         suppressed: 518,353 bytes in 4,921 blocks
==26173== Reachable blocks (those to which a pointer was found) are not shown.
==26173== To see them, rerun with: --leak-check=full --show-reachable=yes
==26173== 
==26173== Use --track-origins=yes to see where uninitialised values come from
==26173== ERROR SUMMARY: 406361 errors from 117 contexts (suppressed: 570 from
212)
==26173== 
--26173-- 
--26173-- used_suppression:      6 <insert_a_suppression_name_here>
--26173-- used_suppression:   2329 <g_type_class_ref leaks>
--26173-- used_suppression:     77 <g_type_init leaks>
--26173-- used_suppression:    914 <insert_a_suppression_name_here>
--26173-- used_suppression:      3 <tls>
--26173-- used_suppression:    237 <insert_a_suppression_name_here>
--26173-- used_suppression:      1 nss_parse_* memleak
--26173-- used_suppression:     20 <insert_a_suppression_name_here>
--26173-- used_suppression:    107 <insert_a_suppression_name_here>
--26173-- used_suppression:     73 <g_type_register_fundamental leaks>
--26173-- used_suppression:      2 <bonobo init>
--26173-- used_suppression:      2 <gconf init>
--26173-- used_suppression:      1 <bonobo init>
--26173-- used_suppression:      2 <gconf init>
--26173-- used_suppression:      1 <glib 2.21 static type data>
--26173-- used_suppression:    370 dl-hack3-cond-1
==26173== 
==26173== ERROR SUMMARY: 406361 errors from 117 contexts (suppressed: 570 from
212)


> 
> > Can someone tell the impact of "live objects" GstPadTemplate after gst-deinit,
> > please?
> 
> None. The registry and associated objects still being there after gst_deinit()
> is not really something to worry about.l

Thanks,

/ha

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