GNOME Bugzilla – Bug 337629
clock-applet has huge memory leak because of a11y
Last modified: 2007-10-01 03:46:00 UTC
Please describe the problem: i noticed today that the clock applet was using up a ton of ram. here is the ouput from ps: david 3194 0.0 23.8 326544 246180 ? Sl Apr03 0:38 /usr/libexec/clock-applet --oaf-activate-iid=OAFIID:GNOME_ClockApplet_Factory --oaf-ior-fd=56 Thats 326M of ram, 246M resident. I killed it and it automatically restarted now it's down to 38M and 12M respectively. Steps to reproduce: 1. I don't know what caused it. I was just running the desktop... 2. 3. Actual results: Expected results: Does this happen every time? I'll check back if it happens again. Other information:
Could be caused by evolution-data-server. How do you the applet? Do you open the calendar?
(assuming the question is 'how do you USE the applet?') i don't use evolution at all. i MAY have double clicked a day to open evolution calendar, but I don't think so. what I do do is use freenx, which causes multiple gnome-sessions for the same user (me) to be opened simultaneously. is it possible that by having 2 sessions (and therefore 2 clocks) open for the same user there is a problem?
*** Bug 338808 has been marked as a duplicate of this bug. ***
I would like to track this down. What steps are involved in getting a cachegrind on a panel applet?
I can confirm this bug from a user perspective as of this morning. System was swapping when I got to it, and clock-applet was occupying 300M+ virt and 200M+ res. Killed and restarted, with now occupying 26M+ virt and 10M res. Seems awfully high for those of us that use it simply to show the time - my xemacs, as comparison, has similar demands, and yet I have dozens of buffers open in it, full of fontified code.
confirmed here, ubuntu dapper. jm 6389 69780:4100 19 ? 0:17 /usr/lib/gnome-panel/clock-applet --oaf-activate-iid=OAFIID:GNOME_ClockApplet_Factory --oaf-ior-fd= : jm 84...; cat /proc/6389/status Name: clock-applet State: S (sleeping) SleepAVG: 98% Tgid: 6389 Pid: 6389 PPid: 1 TracerPid: 0 Uid: 1000 1000 1000 1000 Gid: 1000 1000 1000 1000 FDSize: 256 Groups: 4 7 24 25 29 40 44 105 115 432 1000 VmPeak: 69780 kB VmSize: 69780 kB VmLck: 0 kB VmHWM: 10376 kB VmRSS: 4100 kB VmData: 2744 kB VmStk: 84 kB VmExe: 72 kB VmLib: 18688 kB VmPTE: 52 kB Threads: 1 SigQ: 0/4294967295 SigPnd: 0000000000000000 ShdPnd: 0000000000000000 SigBlk: 0000000000000000 SigIgn: 0000000020001000 SigCgt: 00000001800004f0 CapInh: 0000000000000000 CapPrm: 0000000000000000 CapEff: 0000000000000000 pmap 6389: 6389: /usr/lib/gnome-panel/clock-applet --oaf-activate-iid=OAFIID:GNOME_ClockApplet_Factory --oaf-ior-fd=33 08048000 72K r-x-- /usr/lib/gnome-panel/clock-applet 0805a000 4K rw--- /usr/lib/gnome-panel/clock-applet 0805b000 2556K rw--- [ anon ] b3e2b000 384K rw-s- [ shmid=0x4130019 ] b3e8b000 7440K r---- /usr/share/icons/hicolor/icon-theme.cache b45cf000 27200K r---- /usr/share/icons/crystalsvg/icon-theme.cache b605f000 9112K r---- /usr/share/icons/gnome/icon-theme.cache b6945000 1492K r---- /usr/share/icons/Tango/icon-theme.cache b6aba000 324K r---- /usr/share/icons/Tangerine/icon-theme.cache b6b0b000 1280K r---- /usr/share/icons/Human/icon-theme.cache b6c4b000 8K r-x-- /usr/lib/pango/1.5.0/modules/pango-basic-fc.so b6c4d000 4K rw--- /usr/lib/pango/1.5.0/modules/pango-basic-fc.so b6c4e000 140K r---- /home/jm/.fonts/verdana.ttf b6c71000 36K r-x-- /lib/tls/i686/cmov/libnss_files-2.3.6.so b6c7a000 4K rw--- /lib/tls/i686/cmov/libnss_files-2.3.6.so b6c7b000 32K r-x-- /lib/tls/i686/cmov/libnss_nis-2.3.6.so b6c83000 4K rw--- /lib/tls/i686/cmov/libnss_nis-2.3.6.so b6c84000 32K r-x-- /lib/tls/i686/cmov/libnss_compat-2.3.6.so b6c8c000 4K rw--- /lib/tls/i686/cmov/libnss_compat-2.3.6.so b6c8d000 12K rw--- [ anon ] b6c90000 16K r-x-- /usr/lib/libkrb5support.so.0.0 b6c94000 4K rw--- /usr/lib/libkrb5support.so.0.0 b6c95000 4K rw--- [ anon ] b6c96000 72K r-x-- /lib/tls/i686/cmov/libnsl-2.3.6.so b6ca8000 4K rw--- /lib/tls/i686/cmov/libnsl-2.3.6.so b6ca9000 8K rw--- [ anon ] b6cab000 108K r-x-- /usr/lib/libgssapi_krb5.so.2.2 b6cc6000 4K rw--- /usr/lib/libgssapi_krb5.so.2.2 b6cc7000 8K r-x-- /lib/libcom_err.so.2.1 b6cc9000 4K rw--- /lib/libcom_err.so.2.1 b6cca000 136K r-x-- /usr/lib/libk5crypto.so.3.0 b6cec000 4K rw--- /usr/lib/libk5crypto.so.3.0 b6ced000 476K r-x-- /usr/lib/libkrb5.so.3.2 b6d64000 8K rw--- /usr/lib/libkrb5.so.3.2 b6d66000 4K rw--- [ anon ] b6d67000 8K r-x-- /usr/lib/libdes425.so.3.0 b6d69000 4K rw--- /usr/lib/libdes425.so.3.0 b6d6a000 84K r-x-- /usr/lib/libkrb4.so.2.0 b6d7f000 4K rw--- /usr/lib/libkrb4.so.2.0 b6d80000 20K rw--- [ anon ] b6d85000 420K r-x-- /usr/lib/libsoftokn3.so b6dee000 16K rw--- /usr/lib/libsoftokn3.so b6df2000 124K r-x-- /usr/lib/libssl3.so b6e11000 8K rw--- /usr/lib/libssl3.so b6e13000 128K r-x-- /usr/lib/libsmime3.so b6e33000 8K rw--- /usr/lib/libsmime3.so b6e35000 408K r-x-- /usr/lib/libnss3.so b6e9b000 20K rw--- /usr/lib/libnss3.so b6ea0000 4K rw--- [ anon ] b6ea1000 216K r-x-- /usr/lib/libdbus-1.so.2.0.0 b6ed7000 4K rw--- /usr/lib/libdbus-1.so.2.0.0 b6ed8000 12K r-x-- /usr/lib/libgpg-error.so.0.1.4 b6edb000 4K rw--- /usr/lib/libgpg-error.so.0.1.4 b6edc000 284K r-x-- /usr/lib/libgcrypt.so.11.2.1 b6f23000 20K rw--- /usr/lib/libgcrypt.so.11.2.1 b6f28000 60K r-x-- /usr/lib/libtasn1.so.2.0.17 b6f37000 4K rw--- /usr/lib/libtasn1.so.2.0.17 b6f38000 704K r-x-- /usr/lib/libasound.so.2.0.0 b6fe8000 20K rw--- /usr/lib/libasound.so.2.0.0 b6fed000 4K rw--- [ anon ] b6fee000 268K r-x-- /usr/lib/libcamel-1.2.so.0.0.0 b7031000 12K rw--- /usr/lib/libcamel-1.2.so.0.0.0 b7034000 12K r-x-- /usr/lib/libORBitCosNaming-2.so.0.1.0 b7037000 4K rw--- /usr/lib/libORBitCosNaming-2.so.0.1.0 b7038000 8K r-x-- /lib/tls/i686/cmov/libutil-2.3.6.so b703a000 4K rw--- /lib/tls/i686/cmov/libutil-2.3.6.so b703b000 64K r-x-- /lib/tls/i686/cmov/libresolv-2.3.6.so b704b000 4K rw--- /lib/tls/i686/cmov/libresolv-2.3.6.so b704c000 8K rw--- [ anon ] b704e000 56K r-x-- /usr/lib/libavahi-client.so.3.1.2 b705c000 4K rw--- /usr/lib/libavahi-client.so.3.1.2 b705d000 4K rw--- [ anon ] b705e000 36K r-x-- /usr/lib/libavahi-common.so.3.4.0 b7067000 4K rw--- /usr/lib/libavahi-common.so.3.4.0 b7068000 8K r-x-- /usr/lib/libavahi-glib.so.1.0.0 b706a000 4K rw--- /usr/lib/libavahi-glib.so.1.0.0 b706b000 396K r-x-- /usr/lib/libgnutls.so.12.3.6 b70ce000 24K rw--- /usr/lib/libgnutls.so.12.3.6 b70d4000 136K r-x-- /usr/lib/libpng12.so.0.1.2.8 b70f6000 4K rw--- /usr/lib/libpng12.so.0.1.2.8 b70f7000 8K r-x-- /usr/lib/libXau.so.6.0.0 b70f9000 4K rw--- /usr/lib/libXau.so.6.0.0 b70fa000 4K rw--- [ anon ] b70fb000 112K r-x-- /usr/lib/libexpat.so.1.0.0 b7117000 12K rw--- /usr/lib/libexpat.so.1.0.0 b711a000 408K r-x-- /usr/lib/libfreetype.so.6.3.8 b7180000 12K rw--- /usr/lib/libfreetype.so.6.3.8 b7183000 868K r-x-- /usr/lib/libdb-4.3.so b725c000 12K rw--- /usr/lib/libdb-4.3.so b725f000 180K r-x-- /usr/lib/libnspr4.so b728c000 8K rw--- /usr/lib/libnspr4.so b728e000 8K rw--- [ anon ] b7290000 16K r-x-- /usr/lib/libplc4.so b7294000 4K rw--- /usr/lib/libplc4.so b7295000 8K r-x-- /usr/lib/libplds4.so b7297000 4K rw--- /usr/lib/libplds4.so b7298000 120K r-x-- /usr/lib/libaudiofile.so.0.0.2 b72b6000 8K rw--- /usr/lib/libaudiofile.so.0.0.2 b72b8000 36K r-x-- /usr/lib/libesd.so.0.2.36 b72c1000 4K rw--- /usr/lib/libesd.so.0.2.36 b72c2000 4K rw--- [ anon ] b72c3000 176K r-x-- /usr/lib/libebook-1.2.so.5.2.1 b72ef000 16K rw--- /usr/lib/libebook-1.2.so.5.2.1 b72f3000 120K r-x-- /usr/lib/libjpeg.so.62.0.0 b7311000 4K rw--- /usr/lib/libjpeg.so.62.0.0 b7312000 12K r-x-- /usr/lib/libgthread-2.0.so.0.1000.3 b7315000 4K rw--- /usr/lib/libgthread-2.0.so.0.1000.3 b7316000 8K r-x-- /lib/tls/i686/cmov/libdl-2.3.6.so b7318000 4K rw--- /lib/tls/i686/cmov/libdl-2.3.6.so b7319000 4K rw--- [ anon ] b731a000 8K r-x-- /usr/lib/libgmodule-2.0.so.0.1000.3 b731c000 4K rw--- /usr/lib/libgmodule-2.0.so.0.1000.3 b731d000 132K r-x-- /lib/tls/i686/cmov/libm-2.3.6.so b733e000 4K rw--- /lib/tls/i686/cmov/libm-2.3.6.so b733f000 276K r-x-- /usr/lib/libORBit-2.so.0.1.0 b7384000 48K rw--- /usr/lib/libORBit-2.so.0.1.0 b7390000 68K r-x-- /usr/lib/libbonobo-activation.so.4.0.0 b73a1000 12K rw--- /usr/lib/libbonobo-activation.so.4.0.0 b73a4000 308K r-x-- /usr/lib/libbonobo-2.so.0.0.0 b73f1000 40K rw--- /usr/lib/libbonobo-2.so.0.0.0 b73fb000 344K r-x-- /usr/lib/libgnomevfs-2.so.0.1400.2 b7451000 20K rw--- /usr/lib/libgnomevfs-2.so.0.1400.2 b7456000 4K rw--- [ anon ] b7457000 900K r-x-- /usr/lib/libX11.so.6.2.0 b7538000 16K rw--- /usr/lib/libX11.so.6.2.0 b753c000 4K rw--- [ anon ] b753d000 276K r-x-- /usr/lib/libcairo.so.2.2.4 b7582000 4K rw--- /usr/lib/libcairo.so.2.2.4 b7583000 12K r-x-- /usr/lib/libXfixes.so.3.0.0 b7586000 4K rw--- /usr/lib/libXfixes.so.3.0.0 b7587000 32K r-x-- /usr/lib/libXcursor.so.1.0.2 b758f000 4K rw--- /usr/lib/libXcursor.so.1.0.2 b7590000 8K r-x-- /usr/lib/libXrandr.so.2.0.0 b7592000 4K rw--- /usr/lib/libXrandr.so.2.0.0 b7593000 28K r-x-- /usr/lib/libXi.so.6.0.0 b759a000 4K rw--- /usr/lib/libXi.so.6.0.0 b759b000 4K rw--- [ anon ] b759c000 8K r-x-- /usr/lib/libXinerama.so.1.0.0 b759e000 4K rw--- /usr/lib/libXinerama.so.1.0.0 b759f000 28K r-x-- /usr/lib/libXrender.so.1.3.0 b75a6000 4K rw--- /usr/lib/libXrender.so.1.3.0 b75a7000 48K r-x-- /usr/lib/libXext.so.6.4.0 b75b3000 4K rw--- /usr/lib/libXext.so.6.4.0 b75b4000 160K r-x-- /usr/lib/libfontconfig.so.1.0.4 b75dc000 20K rw--- /usr/lib/libfontconfig.so.1.0.4 b75e1000 4K rw--- [ anon ] b75e2000 28K r-x-- /usr/lib/libpangocairo-1.0.so.0.1201.2 b75e9000 4K rw--- /usr/lib/libpangocairo-1.0.so.0.1201.2 b75ea000 140K r-x-- /usr/lib/libpangoft2-1.0.so.0.1201.2 b760d000 4K rw--- /usr/lib/libpangoft2-1.0.so.0.1201.2 b760e000 4K rw--- [ anon ] b760f000 80K r-x-- /usr/lib/libart_lgpl_2.so.2.3.17 b7623000 4K rw--- /usr/lib/libart_lgpl_2.so.2.3.17 b7624000 28K r-x-- /lib/libpopt.so.0.0.0 b762b000 4K rw--- /lib/libpopt.so.0.0.0 b762c000 160K r-x-- /usr/lib/libgnomecanvas-2.so.0.1400.0 b7654000 4K rw--- /usr/lib/libgnomecanvas-2.so.0.1400.0 b7655000 76K r-x-- /usr/lib/libz.so.1.2.3 b7668000 4K rw--- /usr/lib/libz.so.1.2.3 b7669000 1060K r-x-- /usr/lib/libxml2.so.2.6.24 b7772000 24K rw--- /usr/lib/libxml2.so.2.6.24 b7778000 88K r-x-- /usr/lib/libglade-2.0.so.0.0.7 b778e000 4K rw--- /usr/lib/libglade-2.0.so.0.0.7 b778f000 4K rw--- [ anon ] b7790000 40K r-x-- /usr/lib/libgnome-keyring.so.0.0.1 b779a000 4K rw--- /usr/lib/libgnome-keyring.so.0.0.1 b779b000 84K r-x-- /usr/lib/libICE.so.6.3.0 b77b0000 4K rw--- /usr/lib/libICE.so.6.3.0 b77b1000 8K rw--- [ anon ] b77b3000 28K r-x-- /usr/lib/libSM.so.6.0.0 b77ba000 4K rw--- /usr/lib/libSM.so.6.0.0 b77bb000 1172K r-x-- /lib/tls/i686/cmov/libc-2.3.6.so b78e0000 28K rw--- /lib/tls/i686/cmov/libc-2.3.6.so b78e7000 12K rw--- [ anon ] b78ea000 60K r-x-- /lib/tls/i686/cmov/libpthread-2.3.6.so b78f9000 4K rw--- /lib/tls/i686/cmov/libpthread-2.3.6.so b78fa000 8K rw--- [ anon ] b78fc000 524K r-x-- /usr/lib/libglib-2.0.so.0.1000.3 b797f000 4K rw--- /usr/lib/libglib-2.0.so.0.1000.3 b7980000 4K rw--- [ anon ] b7981000 180K r-x-- /usr/lib/libgconf-2.so.4.1.0 b79ae000 12K rw--- /usr/lib/libgconf-2.so.4.1.0 b79b1000 220K r-x-- /usr/lib/libgobject-2.0.so.0.1000.3 b79e8000 4K rw--- /usr/lib/libgobject-2.0.so.0.1000.3 b79e9000 128K r-x-- /usr/lib/libedataserver-1.2.so.7.0.1 b7a09000 8K rw--- /usr/lib/libedataserver-1.2.so.7.0.1 b7a0b000 76K r-x-- /usr/lib/libgnome-2.so.0.1401.0 b7a1e000 4K rw--- /usr/lib/libgnome-2.so.0.1401.0 b7a1f000 216K r-x-- /usr/lib/libpango-1.0.so.0.1201.2 b7a55000 8K rw--- /usr/lib/libpango-1.0.so.0.1201.2 b7a57000 80K r-x-- /usr/lib/libgdk_pixbuf-2.0.so.0.800.20 b7a6b000 4K rw--- /usr/lib/libgdk_pixbuf-2.0.so.0.800.20 b7a6c000 4K rw--- [ anon ] b7a6d000 92K r-x-- /usr/lib/libatk-1.0.so.0.1114.0 b7a84000 8K rw--- /usr/lib/libatk-1.0.so.0.1114.0 b7a86000 488K r-x-- /usr/lib/libgdk-x11-2.0.so.0.800.20 b7b00000 12K rw--- /usr/lib/libgdk-x11-2.0.so.0.800.20 b7b03000 2852K r-x-- /usr/lib/libgtk-x11-2.0.so.0.800.20 b7dcc000 36K rw--- /usr/lib/libgtk-x11-2.0.so.0.800.20 b7dd5000 12K rw--- [ anon ] b7dd8000 140K r-x-- /usr/lib/libedataserverui-1.2.so.6.1.2 b7dfb000 4K rw--- /usr/lib/libedataserverui-1.2.so.6.1.2 b7dfc000 516K r-x-- /usr/lib/libecal-1.2.so.3.2.8 b7e7d000 60K rw--- /usr/lib/libecal-1.2.so.3.2.8 b7e8c000 12K rw--- [ anon ] b7e8f000 348K r-x-- /usr/lib/libbonoboui-2.so.0.0.0 b7ee6000 12K rw--- /usr/lib/libbonoboui-2.so.0.0.0 b7ee9000 4K rw--- [ anon ] b7eea000 516K r-x-- /usr/lib/libgnomeui-2.so.0.1401.0 b7f6b000 16K rw--- /usr/lib/libgnomeui-2.so.0.1401.0 b7f6f000 48K r-x-- /usr/lib/libpanel-applet-2.so.0.2.7 b7f7b000 4K rw--- /usr/lib/libpanel-applet-2.so.0.2.7 b7f88000 68K r-x-- /usr/lib/gtk-2.0/2.4.0/engines/libubuntulooks.so b7f99000 4K rw--- /usr/lib/gtk-2.0/2.4.0/engines/libubuntulooks.so b7f9a000 4K r-x-- /usr/lib/gconv/ISO8859-1.so b7f9b000 4K rw--- /usr/lib/gconv/ISO8859-1.so b7f9c000 12K rw--- [ anon ] b7f9f000 84K r-x-- /lib/ld-2.3.6.so b7fb4000 4K rw--- /lib/ld-2.3.6.so bf99f000 84K rwx-- [ stack ] ffffe000 4K ----- [ anon ] total 69784K the process is still running, so let me know if you want more.
As a followup to Justin's posting of a few weeks ago, a pmem of the clock-applet taken 30 minutes apart has only a single process growing in size: diff t1 t2 4c4 < 0805b000 8864K rw--- [ anon ] --- > 0805b000 10104K rw--- [ anon ] So, it appears that the clock applet is requesting additional memory frequently, perhaps every time it updates the display. I've run the process with seconds being displayed and with seconds not being displayed, and it makes no difference in stopping the memory leak. Even without touching the clock other than restarting it, this particular process has been running for only half an hour and is steadily growing: cat /proc/5023/status Name: clock-applet State: S (sleeping) SleepAVG: 97% Tgid: 5023 Pid: 5023 PPid: 1 TracerPid: 0 Uid: 1000 1000 1000 1000 Gid: 1000 1000 1000 1000 FDSize: 256 Groups: 24 29 60 115 1000 VmPeak: 31220 kB VmSize: 31212 kB VmLck: 0 kB VmHWM: 20172 kB VmRSS: 20172 kB VmData: 10896 kB VmStk: 84 kB VmExe: 72 kB VmLib: 19136 kB VmPTE: 40 kB Threads: 1 SigQ: 0/4294967295 SigPnd: 0000000000000000 ShdPnd: 0000000000000000 SigBlk: 0000000000000000 SigIgn: 0000000020001000 SigCgt: 00000001800004f0 CapInh: 0000000000000000 CapPrm: 0000000000000000 CapEff: 0000000000000000
Tested this with 2.16.0 now and I got just one tiny leak reported from valgrind. There are a couple of small ones from fontconfig as well, but nothing that could account for tens of megs of memory being leaked. I do see this warning when it exits: (ClockApplet:20348): Bonobo-WARNING **: Leaked a total of 2 refs to 2 bonobo object(s)
Can people who reported about this leak see an improvement in 2.16?
Also I'd appreciate if people who can see the leak could run the applet under valgrind. Hrm. Note that it might now run in-process, so it's gnome-panel that might leak (and you'd have to run it under valgrind).
There does not appear to be 2.16 versions available for the i386 at ftp://ftp.us.debian.org/debian/pool/main/g/gnome-panel/ nor at ftp://ftp.us.debian.org/debian/pool/main/g/gnome-applets/
http://packages.qa.debian.org/g/gnome-panel.html There's one in experimental. Not fun for you, though, since it'll probably require other stuff from experimental.
Since I originally submitted this bug, I upgraded to Fedora Core 6. I may have also changed my work email location. At some point I used evolution with exchange access. That method is not currently working for me. I am using IMAP - which implies local calendar folders. I currently see a small memory leak in the clock application after I open the calendar. Previously I saw a huge memory leak. Somehow I haven't run valgrind in the past. Are there any hints for running it? Thanks, Marc
http://live.gnome.org/Valgrind (wiki looks down, but using google cache should work) Note that for an applet, you first need to kill it, wait for the error dialog popped up by the panel, launch it with valgrind, and then click reload on the error dialog.
I have made some tests with gnome-panel 2.16.2. The clock applet starts at 120M virtual memory, and immediately grows at 160M after only clicking on it to see the calendar. After a few hours it can be more. This is also true with a dummy account. However this is only virtual memory; the RSS starts at 11M and grows up to 15M. As I have zero swap used, it means this virtual memory use is caused by mmap()ed pages. It is weird that so much memory has to be mapped, but on first sight it looks harmless.
Created attachment 84606 [details] Valgrind output Here is the output of valgrind when running the applet inside it. A few leaks, especially in fontconfig, but nothing crispy here.
There's no real clock leak in the valgrind log Josselin attached. Marc: any news? I'm closing the bug, but feel free to reopen if you can still see this and if you can attach a valgrind log. Thanks!
Hi -- I am seeing this problem to, with this setup: [martin@cree ~]$ cat /etc/fedora-release ; uname -a ; rpm -q gnome-applets Fedora Core release 6 (Zod) Linux cree 2.6.20-1.2962.fc6 #1 SMP Tue Jun 19 18:50:05 EDT 2007 x86_64 x86_64 x86_64 GNU/Linux gnome-applets-2.16.0.1-12.fc6 I'll attach a valgrind massif output & graph - you can see that looks a lot like a leak. Evolution data server is NOT running. I shall run the applet for another day with memcheck full and post that. If you can think of anything (else) I can provide to help debug this, please let me know. I'm not a valgrind expert.
Created attachment 95630 [details] Valrgind massif output
Created attachment 95631 [details] Valgrind massif graph
This doesn't give any information about a leak, does it?
Besides the fact that memory usage grew at a constant rate over the course of a few days? To a gnome neophyte like me that looks like a leak, and I thought the first thing that needed confirmation was that a leak actually existed. So hopefully that's a bit of information. No, it doesn't tell you much about the leak. But confirming there's a leak might be enough to change the status back to NEEDINFO from RESOLVED/INCOMPLETE. I will gather more information about the leak. It takes a while as the leak takes a few hours to become staggeringly obvious, and I'm not clear what I'm looking for in the valgrind output. I shall provide a valgrind memtest log soon. Thanks for your continued attention to this. I'm sorry it's taking so long to get you details.
Attached is the memtest log from a multi-day run showing 25MB "definitely lost" & 14/9 MB "indirectly"/"possibly" lost. At the end, the clock applet was using about a gig of memory (according to ps). It starts at around 330 MB.
Created attachment 96033 [details] valgrind memcheck output This is the command line that generated the output: G_SLICE=always-malloc G_DEBUG=gc-friendly valgrind --tool=memcheck --leak-check=full -v --leak-resolution=high --num-callers=20 --suppressions=/home/martin/src/gtk.suppression /usr/libexec/clock-applet --oaf-activate-iid=OAFIID:GNOME_ClockApplet_Factory --oaf-ior-fd=54 > memcheck-clock.txt 2>&1
All the huge leaks are accessibility-related. Moving to at-spi.
Which version is it? I fixed a similar leak in GNOME 2.18 I think.
It's all definitely gnome 2.16 (latest Fedora Core 6 packages). Does that answer the question? Otherwise, I'm sorry, but I don't understand -- what rpm/library's version number would you like me to check? Here's an answer based on a different guess of what you might be asking: $ rpm -qa | grep "atk\|gail\|gnome" | sort | uniq atk-1.12.2-1.fc6 atk-devel-1.12.2-1.fc6 bluez-gnome-0.6-1.fc6 gail-1.9.2-1.fc6 gail-devel-1.9.2-1.fc6 gnome-applets-2.16.0.1-13.fc6 gnome-audio-2.0.0-3.1.1 gnome-backgrounds-2.15.92-1.fc6 gnome-bluetooth-0.7.0-12.fc6 gnome-bluetooth-libs-0.7.0-12.fc6 gnome-desktop-2.16.3-1.fc6 gnome-desktop-devel-2.16.3-1.fc6 gnome-doc-utils-0.8.0-2.fc6 gnome-games-2.16.3-2.fc6 gnome-icon-theme-2.16.0.1-3.fc6 gnome-keyring-0.6.0-1.fc6 gnome-keyring-devel-0.6.0-1.fc6 gnome-mag-0.13.2-1.fc6 gnome-media-2.16.1-4.fc6 gnome-menus-2.16.0-2.fc6 gnome-mime-data-2.4.2-3.1 gnome-mount-0.5-2.fc6 gnome-netstatus-2.12.0-5.1 gnome-panel-2.16.3-2.fc6 gnome-panel-devel-2.16.3-2.fc6 gnome-pilot-2.0.15-1.fc6 gnome-pilot-devel-2.0.15-1.fc6 gnome-power-manager-2.16.3-1.fc6 gnome-python2-2.16.2-2.fc6 gnome-python2-applet-2.16.0-1.fc6 gnome-python2-bonobo-2.16.2-2.fc6 gnome-python2-canvas-2.16.2-2.fc6 gnome-python2-desktop-2.16.0-1.fc6 gnome-python2-extras-2.14.2-10.fc6 gnome-python2-gconf-2.16.2-2.fc6 gnome-python2-gnomeprint-2.16.0-1.fc6 gnome-python2-gnomevfs-2.16.2-2.fc6 gnome-python2-gtkhtml2-2.14.2-10.fc6 gnome-python2-gtkmozembed-2.14.2-10.fc6 gnome-python2-gtksourceview-2.16.0-1.fc6 gnome-python2-libegg-2.14.2-10.fc6 gnome-python2-rsvg-2.16.0-1.fc6 gnome-screensaver-2.16.3-1.fc6 gnome-session-2.16.3-1.fc6 gnome-sharp-2.16.0-1.fc6 gnome-speech-0.4.5-1.fc6 gnome-spell-1.0.7-3.1 gnome-system-monitor-2.16.0-1.fc6 gnome-terminal-2.16.0-2.fc6 gnome-themes-2.16.3-1.fc6 gnome-themes-extras-0.9.0-5.fc6 gnome-user-docs-2.16.0-2.fc6 gnome-user-share-0.10-5 gnome-utils-2.16.0-1.fc6 gnome-vfs2-2.16.2-2.fc6 gnome-vfs2-devel-2.16.2-2.fc6 gnome-vfs2-monikers-2.15.3-2 gnome-vfs2-obexftp-0.2-7.fc6 gnome-vfs2-smb-2.16.2-2.fc6 gnome-volume-manager-2.15.0-4.fc6 libgail-gnome-1.1.3-1.2.1 libgnome-2.16.0-4.fc6 libgnomecanvas-2.14.0-4.1 libgnomecanvas-devel-2.14.0-4.1 libgnomecups-0.2.2-8 libgnome-devel-2.16.0-4.fc6 libgnome-java-2.12.4-3.fc6 libgnomeprint22-2.12.1-9.fc6 libgnomeprint22-devel-2.12.1-9.fc6 libgnomeprintui22-2.12.1-6 libgnomeprintui22-devel-2.12.1-6 libgnomeui-2.16.0-4.fc6 libgnomeui-devel-2.16.0-4.fc6 NetworkManager-gnome-0.6.4-5.fc6 (I have both i386 and x86_64 pkgs installed, hence the uniq)
Thank you. So I think it has been fixed since GNOME 2.18.
Are there many users still using GNOME 2.16? If not, I'd suggest people upgrade to GNOME 2.18 or 2.20. Please re-open the bug if you think it is worth to put back to GNOME 2.16. (It would be a complicated patch if want to fix it in GNOME 2.16 because I have fixed several leaks since GNOME 2.18. There will be risk to put it back and we need to do some test.)
No idea how many users are on 2.16. I don't imagine enough of us to warrant the time/risk, though. Thanks for fixing.