After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 337629 - clock-applet has huge memory leak because of a11y
clock-applet has huge memory leak because of a11y
Status: RESOLVED FIXED
Product: at-spi
Classification: Platform
Component: atkbridge
unspecified
Other All
: Normal normal
: ---
Assigned To: Li Yuan
Li Yuan
: 338808 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2006-04-07 13:48 UTC by David Mansfield
Modified: 2007-10-01 03:46 UTC
See Also:
GNOME target: ---
GNOME version: 2.13/2.14


Attachments
Valgrind output (195.55 KB, text/plain)
2007-03-14 22:23 UTC, Josselin Mouette
Details
Valrgind massif output (10.81 KB, text/plain)
2007-09-15 12:35 UTC, Martin Dengler
Details
Valgrind massif graph (17.19 KB, image/png)
2007-09-15 12:37 UTC, Martin Dengler
Details
valgrind memcheck output (357.17 KB, text/plain)
2007-09-22 21:46 UTC, Martin Dengler
Details

Description David Mansfield 2006-04-07 13:48:38 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:
Comment 1 Vincent Untz 2006-04-10 06:43:12 UTC
Could be caused by evolution-data-server.

How do you the applet? Do you open the calendar?
Comment 2 David Mansfield 2006-04-10 15:40:50 UTC
(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?
Comment 3 Teppo Turtiainen 2006-05-02 20:27:00 UTC
*** Bug 338808 has been marked as a duplicate of this bug. ***
Comment 4 Jason Clinton 2006-08-03 20:27:03 UTC
I would like to track this down. What steps are involved in getting a cachegrind on a panel applet?
Comment 5 thrill 2006-08-07 14:15:27 UTC
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.
Comment 6 Justin Mason 2006-08-14 14:59:58 UTC
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.
Comment 7 thrill 2006-09-02 17:34:52 UTC
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
Comment 8 Kjartan Maraas 2006-09-07 11:20:33 UTC
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)

Comment 9 Vincent Untz 2007-01-17 19:48:22 UTC
Can people who reported about this leak see an improvement in 2.16?
Comment 10 Vincent Untz 2007-01-17 19:49:42 UTC
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).
Comment 11 thrill 2007-01-17 20:07:08 UTC
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/

Comment 12 Vincent Untz 2007-01-17 20:31:13 UTC
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.
Comment 13 Marc Milgram 2007-01-17 20:54:25 UTC
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
Comment 14 Vincent Untz 2007-01-17 21:06:49 UTC
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.
Comment 15 Josselin Mouette 2007-03-14 22:22:11 UTC
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.
Comment 16 Josselin Mouette 2007-03-14 22:23:41 UTC
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.
Comment 17 Vincent Untz 2007-06-15 15:53:35 UTC
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!
Comment 18 Martin Dengler 2007-09-15 12:33:53 UTC
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.

Comment 19 Martin Dengler 2007-09-15 12:35:23 UTC
Created attachment 95630 [details]
Valrgind massif output
Comment 20 Martin Dengler 2007-09-15 12:37:46 UTC
Created attachment 95631 [details]
Valgrind massif graph
Comment 21 Vincent Untz 2007-09-15 13:45:08 UTC
This doesn't give any information about a leak, does it?
Comment 22 Martin Dengler 2007-09-16 09:33:30 UTC
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.


Comment 23 Martin Dengler 2007-09-22 21:43:59 UTC
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.


Comment 24 Martin Dengler 2007-09-22 21:46:00 UTC
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
Comment 25 Vincent Untz 2007-09-23 08:09:12 UTC
All the huge leaks are accessibility-related. Moving to at-spi.
Comment 26 Li Yuan 2007-09-24 02:23:00 UTC
Which version is it? I fixed a similar leak in GNOME 2.18 I think.
Comment 27 Martin Dengler 2007-09-24 15:53:03 UTC
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)

Comment 28 Li Yuan 2007-09-26 03:33:34 UTC
Thank you. So I think it has been fixed since GNOME 2.18.
Comment 29 Li Yuan 2007-09-26 03:53:13 UTC
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.)
Comment 30 Martin Dengler 2007-10-01 03:46:00 UTC
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.