small memory leak in unity-panel-service per use of global menu
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| DBus Menu |
Fix Released
|
Undecided
|
Unassigned | ||
| Unity |
Fix Released
|
Undecided
|
Unassigned | ||
| Unity Foundations |
Fix Released
|
Undecided
|
Chris Coulson | ||
| indicator-appmenu (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
| libdbusmenu (Ubuntu) |
Fix Released
|
Undecided
|
Chris Coulson | ||
| unity (Ubuntu) |
Fix Released
|
High
|
Chris Coulson | ||
Bug Description
Binary package hint: unity
Every use of the global menu increases memory used by unity-panel-service by about 1MB per use
If desired can provide log
It's also been reported and seen here that in the Classic login each use of the global menu does about the same for indicator-
ProblemType: Bug
DistroRelease: Ubuntu 11.04
Package: unity 3.4.4-0ubuntu2 [modified: usr/share/
ProcVersionSign
Uname: Linux 2.6.38-4-generic i686
Architecture: i386
CompizPlugins: [core,bailer,
CompositorRunning: compiz
DRM.card0.VGA.1:
status: disconnected
enabled: disabled
dpms: Off
modes:
edid-base64:
Date: Tue Feb 22 00:32:54 2011
DistUpgraded: Fresh install
DistroCodename: natty
DistroVariant: ubuntu
GraphicsCard:
nVidia Corporation G70 [GeForce 7800 GS] [10de:00f5] (rev a2) (prog-if 00 [VGA controller])
Subsystem: Device [19f1:1fa4]
InstallationMedia: Ubuntu 11.04 "Natty Narwhal" - Alpha i386 (20110202)
InstallationMedia_: Ubuntu 11.04 "Natty Narwhal" - Alpha i386 (20110202)
MachineType: alienware alienware
ProcEnviron:
LANGUAGE=en_US:en
PATH=(custom, user)
LANG=en_US.UTF-8
LC_MESSAGES=
SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=
ProcVersionSign
Renderer: Unknown
SourcePackage: unity
dmi.bios.date: 01/29/2004
dmi.bios.vendor: Intel Corp.
dmi.bios.version: BZ87510A.
dmi.board.name: D875PBZ
dmi.board.vendor: Intel Corporation
dmi.board.version: AAC26680-205
dmi.chassis.type: 2
dmi.chassis.vendor: alienware
dmi.chassis.
dmi.modalias: dmi:bvnIntelCor
dmi.product.name: alienware
dmi.sys.vendor: alienware
version.compiz: compiz 1:0.9.2.
version.libdrm2: libdrm2 2.4.23-1ubuntu3
version.
version.
version.
version.
version.
Related branches
- Ted Gould (community): Approve
-
Diff: 70 lines (+11/-11) 3 files modifiedapilibdbusmenu-glib/client.c (+6/-5)
libdbusmenu-gtk/client.c (+4/-0)
libdbusmenu-gtk/menuitem.c (+1/-6)
- Ken VanDine: Disapprove
-
Diff: 244 lines (+69/-22) 8 files modifiedapiChangeLog (+28/-0)
configure (+11/-11)
configure.ac (+3/-3)
debian/changelog (+10/-0)
docs/libdbusmenu-glib/reference/version.xml (+1/-1)
docs/libdbusmenu-gtk/reference/version.xml (+1/-1)
libdbusmenu-gtk/client.c (+14/-6)
libdbusmenu-gtk/genericmenuitem.c (+1/-0)
- Ken VanDine: Pending requested
-
Diff: 67319 lines (+66205/-527) 110 files modifiedapi.bzrignore (+0/-229)
AUTHORS (+17/-0)
ChangeLog (+5918/-0)
Makefile.in (+821/-0)
aclocal.m4 (+10063/-0)
autogen.sh (+0/-12)
compile (+143/-0)
config.guess (+1502/-0)
config.h.in (+86/-0)
config.sub (+1714/-0)
configure (+16483/-0)
debian/changelog (+657/-0)
debian/control (+225/-0)
debian/copyright (+40/-0)
debian/gir1.2-dbusmenu-glib-0.4.install (+1/-0)
debian/gir1.2-dbusmenu-gtk-0.4.install (+1/-0)
debian/gir1.2-dbusmenu-gtk3-0.4.install (+1/-0)
debian/libdbusmenu-glib-dev.install (+6/-0)
debian/libdbusmenu-glib-doc.install (+1/-0)
debian/libdbusmenu-glib3.install (+1/-0)
debian/libdbusmenu-gtk-dev.install (+6/-0)
debian/libdbusmenu-gtk-doc.install (+1/-0)
debian/libdbusmenu-gtk3-3.install (+1/-0)
debian/libdbusmenu-gtk3-dev.install (+5/-0)
debian/libdbusmenu-gtk3.install (+1/-0)
debian/libdbusmenu-jsonloader-dev.install (+4/-0)
debian/libdbusmenu-jsonloader3.install (+1/-0)
debian/libdbusmenu-tools.install (+3/-0)
debian/rules (+45/-0)
debian/source/format (+1/-0)
debian/watch (+2/-0)
depcomp (+630/-0)
docs/Makefile.in (+613/-0)
docs/libdbusmenu-glib/Makefile.in (+613/-0)
docs/libdbusmenu-glib/reference/Makefile.in (+689/-0)
docs/libdbusmenu-glib/reference/html/annotation-glossary.html (+71/-0)
docs/libdbusmenu-glib/reference/html/api-index-full.html (+406/-0)
docs/libdbusmenu-glib/reference/html/ch01.html (+48/-0)
docs/libdbusmenu-glib/reference/html/index.html (+46/-0)
docs/libdbusmenu-glib/reference/html/index.sgml (+120/-0)
docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuClient.html (+427/-0)
docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuClientMenuitem.html (+92/-0)
docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuMenuitem.html (+1326/-0)
docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuMenuitemProxy.html (+154/-0)
docs/libdbusmenu-glib/reference/html/libdbusmenu-glib-DbusmenuServer.html (+260/-0)
docs/libdbusmenu-glib/reference/html/libdbusmenu-glib.devhelp (+109/-0)
docs/libdbusmenu-glib/reference/html/libdbusmenu-glib.devhelp2 (+109/-0)
docs/libdbusmenu-glib/reference/html/object-tree.html (+32/-0)
docs/libdbusmenu-glib/reference/html/style.css (+266/-0)
docs/libdbusmenu-glib/reference/tmpl/client-menuitem.sgml (+52/-0)
docs/libdbusmenu-glib/reference/tmpl/client.sgml (+168/-0)
docs/libdbusmenu-glib/reference/tmpl/menuitem-proxy.sgml (+57/-0)
docs/libdbusmenu-glib/reference/tmpl/menuitem.sgml (+520/-0)
docs/libdbusmenu-glib/reference/tmpl/server.sgml (+112/-0)
docs/libdbusmenu-glib/reference/version.xml (+1/-0)
docs/libdbusmenu-glib/reference/xml/annotation-glossary.xml (+64/-0)
docs/libdbusmenu-glib/reference/xml/api-index-deprecated.xml (+8/-0)
docs/libdbusmenu-glib/reference/xml/api-index-full.xml (+105/-0)
docs/libdbusmenu-glib/reference/xml/client-menuitem.xml (+70/-0)
docs/libdbusmenu-glib/reference/xml/client.xml (+322/-0)
docs/libdbusmenu-glib/reference/xml/menuitem-proxy.xml (+103/-0)
docs/libdbusmenu-glib/reference/xml/menuitem.xml (+915/-0)
docs/libdbusmenu-glib/reference/xml/server.xml (+199/-0)
docs/libdbusmenu-gtk/Makefile.in (+613/-0)
docs/libdbusmenu-gtk/reference/Makefile.in (+685/-0)
docs/libdbusmenu-gtk/reference/html/api-index-full.html (+122/-0)
docs/libdbusmenu-gtk/reference/html/ch01.html (+42/-0)
docs/libdbusmenu-gtk/reference/html/index.html (+39/-0)
docs/libdbusmenu-gtk/reference/html/index.sgml (+33/-0)
docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-DbusmenuGtkClient.html (+316/-0)
docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-DbusmenuGtkMenu.html (+169/-0)
docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk-menuitem.html (+256/-0)
docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk.devhelp (+36/-0)
docs/libdbusmenu-gtk/reference/html/libdbusmenu-gtk.devhelp2 (+36/-0)
docs/libdbusmenu-gtk/reference/html/object-tree.html (+42/-0)
docs/libdbusmenu-gtk/reference/html/style.css (+266/-0)
docs/libdbusmenu-gtk/reference/libdbusmenu-gtk-sections.txt (+70/-0)
docs/libdbusmenu-gtk/reference/libdbusmenu-gtk.types (+3/-0)
docs/libdbusmenu-gtk/reference/tmpl/client.sgml (+115/-0)
docs/libdbusmenu-gtk/reference/tmpl/genericmenuitem.sgml (+22/-0)
docs/libdbusmenu-gtk/reference/tmpl/libdbusmenu-gtk-unused.sgml (+118/-0)
docs/libdbusmenu-gtk/reference/tmpl/menu.sgml (+67/-0)
docs/libdbusmenu-gtk/reference/tmpl/menuitem.sgml (+84/-0)
docs/libdbusmenu-gtk/reference/version.xml (+1/-0)
docs/libdbusmenu-gtk/reference/xml/api-index-deprecated.xml (+8/-0)
docs/libdbusmenu-gtk/reference/xml/api-index-full.xml (+33/-0)
docs/libdbusmenu-gtk/reference/xml/client.xml (+214/-0)
docs/libdbusmenu-gtk/reference/xml/genericmenuitem.xml (+36/-0)
docs/libdbusmenu-gtk/reference/xml/menu.xml (+118/-0)
docs/libdbusmenu-gtk/reference/xml/menuitem.xml (+165/-0)
install-sh (+520/-0)
libdbusmenu-glib/Doxyfile (+0/-257)
libdbusmenu-glib/Makefile.in (+958/-0)
libdbusmenu-glib/client-marshal.c (+131/-0)
libdbusmenu-glib/client-marshal.h (+28/-0)
libdbusmenu-glib/dbus-menu-clean.xml.c (+132/-0)
libdbusmenu-glib/dbus-menu-clean.xml.h (+1/-0)
libdbusmenu-glib/menuitem-marshal.c (+170/-0)
libdbusmenu-glib/menuitem-marshal.h (+45/-0)
libdbusmenu-glib/server-marshal.c (+164/-0)
libdbusmenu-glib/server-marshal.h (+36/-0)
libdbusmenu-gtk/Makefile.in (+1005/-0)
ltmain.sh (+8413/-0)
missing (+376/-0)
mkinstalldirs (+162/-0)
po/Makefile.in.in (+217/-0)
tests/Makefile.in (+2204/-0)
tools/Makefile.in (+858/-0)
tools/testapp/CMakeLists.txt (+0/-29)
tools/testapp/Makefile.in (+619/-0)
- Ted Gould (community): Approve
-
Diff: 356 lines (+102/-39) 1 file modifiedapilibdbusmenu-glib/client.c (+102/-39)
- BootDmesg.txt Edit (39.7 KiB, text/plain; charset="utf-8")
- CurrentDmesg.txt Edit (9.0 KiB, text/plain; charset="utf-8")
- DRM.card0.DVI.I.1.txt Edit (385 bytes, text/plain; charset="utf-8")
- DRM.card0.TV.1.txt Edit (124 bytes, text/plain; charset="utf-8")
- Dependencies.txt Edit (5.1 KiB, text/plain; charset="utf-8")
- GconfCompiz.txt Edit (36.0 KiB, text/plain; charset="utf-8")
- Lspci.txt Edit (11.0 KiB, text/plain; charset="utf-8")
- Lsusb.txt Edit (576 bytes, text/plain; charset="utf-8")
- ProcCpuinfo.txt Edit (1.2 KiB, text/plain; charset="utf-8")
- ProcInterrupts.txt Edit (1.5 KiB, text/plain; charset="utf-8")
- ProcModules.txt Edit (2.2 KiB, text/plain; charset="utf-8")
- UdevDb.txt Edit (98.7 KiB, text/plain; charset="utf-8")
- UdevLog.txt Edit (233.3 KiB, text/plain; charset="utf-8")
- UnitySupportTest.txt Edit (973 bytes, text/plain; charset="utf-8")
- XorgLog.txt Edit (48.5 KiB, text/plain; charset="utf-8")
- XorgLogOld.txt Edit (48.5 KiB, text/plain; charset="utf-8")
- Xrandr.txt Edit (4.3 KiB, text/plain; charset="utf-8")
- peripherals.txt Edit (1.4 KiB, text/plain; charset="utf-8")
- xdpyinfo.txt Edit (25.0 KiB, text/plain; charset="utf-8")
Confirming on classic desktop.
indicator-
Some of these leaks are in dbusmenu (branch pushed for those), although I think some of the remaining leaks are in unity + various indicators too
This bug was fixed in the package libdbusmenu - 0.3.101-0ubuntu1
---------------
libdbusmenu (0.3.101-0ubuntu1) natty; urgency=low
* New upstream release.
∘ Add helper to get cached menuitem from widget
∘ Have the GTK Dbusmenu Client handle theme directories (LP: #727325)
∘ Fix a bunch of memory leaks (LP: #722972)
∘ Handle _ in menuitems more correctly when parsing (LP: #621301)
∘ Protect from NULL layout_props (LP: #729722)
∘ Remove the property from the hashtable before signaling that
it's been changed (LP: #725603)
∘ Wrap emitted properties in a variant
∘ Fix enum templates so they can be included by other programs
without error
∘ Setting the cached menu item (LP: #723463) (LP: #729128) (LP: #729194)
-- Ted Gould <email address hidden> 2011年3月10日 11:12:50 -0600
Closing the unity task and reopening the libdbusmenu one. The other bug leaks are also there too.
Yup. Still getting 100+ MB memory leaks with the appmenu.
This bug was fixed in the package libdbusmenu - 0.3.102-0ubuntu1
---------------
libdbusmenu (0.3.102-0ubuntu1) natty; urgency=low
* New upstream release.
∘ Remove child items when they're removed by GTK
∘ Adding opened and closed events for menu visibility
∘ Handle empty image types
∘ Remove critical warning on parser menuitem check (LP: #733918)
∘ Fix dependencies in pkgconfig files (LP: #733263)
∘ Handle NULL labels (LP: #733688)
∘ Fix memory leaks from variants (LP: #722972)
-- Ted Gould <email address hidden> 2011年3月16日 14:08:13 -0500
is that still an issue?
unity-panel-service consistently uses 31 MiB of memory on my system, so I would say the issue is gone.
...hence all tasks should be closed.
unity-panel-service is taking ~120mb of ram right now. This wasn't happening before (I do monitor my system resources regularly). I'm on a laptop and it's been up for 15hrs. For the record, I enabled the old system tray functionality right after installing the system a couple of weeks ago, don't know if this has anything to do with this issue.