Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Massive memory leak #5

Closed
OmegaPhil opened this issue Nov 17, 2013 · 8 comments
Closed

Massive memory leak #5

OmegaPhil opened this issue Nov 17, 2013 · 8 comments
Assignees
Labels

Comments

@OmegaPhil
Copy link
Owner

495MB RSS on an applet, thats ridiculous. Is the value history list ever cleared out?

@ghost ghost assigned OmegaPhil Nov 19, 2013
@OmegaPhil
Copy link
Owner Author

I've read the valgrind manual, and am currently running this under valgrind memcheck for 1-2 days to see what leaks are happening. If this isn't enough, I need to follow it up with massif.

@OmegaPhil
Copy link
Owner Author

xfce4 hardware monitor applet - massif visualiser memory leak - 21 01 14

massif shows that the memory leak is not in my code but something to do with the C gtk main loop, and libgnomecanvas repeatedly calling gdk_region_new. No idea why yet, or how to fight it.

@OmegaPhil
Copy link
Owner Author

Grasping at straws here - testing running Gnome::Canvas::init() in a special panel init function rather than the construction function.

@OmegaPhil
Copy link
Owner Author

This has made no difference. I'm now running the GNOME 2 Hardware Monitor applet to see if this has the same memory leak

@OmegaPhil
Copy link
Owner Author

It does!! Running it in Debian oldstable, RSS at 75976KB after about a day...

@OmegaPhil
Copy link
Owner Author

I have looked into libgnomecanvas from libgnomecanvas2-dev, and there appears to be a suspicious allocation of a GdkRegion that isn't used in libgnomecanvas/gnome-canvas.c:paint (line 3114) - I have commented that out and am testing on my main machine. This is the only gdk_region_new call which would fit nicely with my earlier findings.

Why doesn't GNOME have a source repo availalble for this code so I can check why the lines are there?

@OmegaPhil
Copy link
Owner Author

This finally works! While RSS did grow slightly over a few days, it actually went down today!

@OmegaPhil
Copy link
Owner Author

Reported upstream: https://bugzilla.gnome.org/show_bug.cgi?id=729717

libgnomecanvas is under the 'unmaintained/deprecated' section so this will probably be ignored.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant