Bug 200184 - Plasma Memory Leak and High CPU usage
Summary: Plasma Memory Leak and High CPU usage
Status: RESOLVED FIXED
Alias: None
Product: plasma4
Classification: Plasma
Component: general (show other bugs)
Version: unspecified
Platform: Mandriva RPMs Linux
: NOR normal
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
: 219246 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-07-14 16:17 UTC by Steve Bond
Modified: 2010-03-24 06:38 UTC (History)
10 users (show)

See Also:
Latest Commit:
Version Fixed In: KDE 4.4.1


Attachments
Strace output (65.01 KB, text/plain)
2009-08-17 08:19 UTC, Steve Bond
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Steve Bond 2009-07-14 16:17:44 UTC
Version:           Qt: 4.5.2 KDE: 4.2.4 (KDE 4.2.4) Plasma Workspace: 0.3 (using KDE 4.2.4)
Compiler:          gcc (GCC) 4.3.2 
OS:                Linux
Installed from:    Mandriva RPMs

After running (on Intel(R) Pentium(R) D CPU 2.80GHz) continuously for a few days plasma starts eating up too much of cpu (close to 100%). It comes down to 3%-4% in a while, but goes high again. Also, the virtual memory size of plasma keeps on increasing over time. It starts with around 250MB and reaches above 500MB within a week or two. As a result, the system response becomes so sluggish that I have to logout and re-login. I have no widgets running and all desktop effects are disabled. So cannot blame it on a leak in some widget.

Here is a "top" snapshot -

top - 19:18:06 up 12 days,  4:14, 12 users,  load average: 0.64, 0.59, 0.61
Tasks: 116 total,   1 running, 115 sleeping,   0 stopped,   0 zombie
Cpu(s): 48.5%us,  1.0%sy,  0.0%ni, 50.5%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1024996k total,   994952k used,    30044k free,    53504k buffers
Swap:  2200864k total,   378868k used,  1821996k free,   292524k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
20524 stvbond   20   0  505m 259m 9372 S   97 25.9 371:52.41 plasma
 5732 root      20   0  2260 1056  820 R    2  0.1   0:00.24 top
19966 root      20   0  441m  46m 2656 S    2  4.6  29:10.13 X
31001 stvbond   20   0  384m  76m  26m S    2  7.6   1:48.79 firefox
    1 root      20   0  1728  508  484 S    0  0.0   0:07.23 init
    2 root      15  -5     0    0    0 S    0  0.0   0:00.00 kthreadd
    3 root      RT  -5     0    0    0 S    0  0.0   0:01.40 migration/0
    4 root      15  -5     0    0    0 S    0  0.0   0:25.03 ksoftirqd/0
    5 root      RT  -5     0    0    0 S    0  0.0   0:01.18 migration/1
    6 root      15  -5     0    0    0 S    0  0.0   0:18.85 ksoftirqd/1
    7 root      15  -5     0    0    0 S    0  0.0   0:08.95 events/0
    8 root      15  -5     0    0    0 S    0  0.0   0:05.02 events/1
    9 root      15  -5     0    0    0 S    0  0.0   0:00.06 khelper
   51 root      15  -5     0    0    0 S    0  0.0   0:00.00 kintegrityd/0
   52 root      15  -5     0    0    0 S    0  0.0   0:00.00 kintegrityd/1
   53 root      15  -5     0    0    0 S    0  0.0   0:02.71 kblockd/0
   54 root      15  -5     0    0    0 S    0  0.0   0:00.22 kblockd/1
   56 root      15  -5     0    0    0 S    0  0.0   0:00.00 kacpid
   57 root      15  -5     0    0    0 S    0  0.0   0:00.00 kacpi_notify
  131 root      15  -5     0    0    0 S    0  0.0   0:00.00 kseriod
  175 root      15  -5     0    0    0 S    0  0.0   0:24.75 kswapd0
  216 root      15  -5     0    0    0 S    0  0.0   0:00.00 aio/0
  217 root      15  -5     0    0    0 S    0  0.0   0:00.00 aio/1
  369 root      15  -5     0    0    0 S    0  0.0   0:00.00 kpsmoused
  389 root      15  -5     0    0    0 S    0  0.0   0:00.04 ksuspend_usbd
  390 root      15  -5     0    0    0 S    0  0.0   0:00.00 khubd
  424 root      15  -5     0    0    0 S    0  0.0   2:25.45 ata/0
  425 root      15  -5     0    0    0 S    0  0.0   0:01.47 ata/1
  426 root      15  -5     0    0    0 S    0  0.0   0:00.00 ata_aux
Comment 1 Steve Bond 2009-08-10 07:48:31 UTC
Problem persists after upgrading to KDE 4.3.0

Qt: 4.5.2
KDE: 4.3.00 (KDE 4.3.0)

Here is a screen-shot of "top" -

top - 11:16:43 up 2 days, 17:38,  6 users,  load average: 0.49, 0.41, 0.21
Tasks: 124 total,   2 running, 122 sleeping,   0 stopped,   0 zombie
Cpu(s): 51.0%us,  1.0%sy,  0.0%ni, 48.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1024996k total,   994540k used,    30456k free,    13812k buffers
Swap:  2200864k total,     1940k used,  2198924k free,   166452k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 3782 stvbond   20   0  438m 218m  33m R   97 21.8 169:56.23 plasma-desktop
 2277 root      20   0  458m  98m 6408 S    2  9.8  21:24.33 X
 3938 stvbond   20   0 94292  20m  12m S    2  2.1   0:08.87 konsole
 4015 stvbond   20   0  2260 1056  820 R    2  0.1   0:00.11 top
    1 root      20   0  1728  608  540 S    0  0.1   0:02.80 init
    2 root      15  -5     0    0    0 S    0  0.0   0:00.00 kthreadd
    3 root      RT  -5     0    0    0 S    0  0.0   0:00.38 migration/0
    4 root      15  -5     0    0    0 S    0  0.0   0:05.82 ksoftirqd/0
    5 root      RT  -5     0    0    0 S    0  0.0   0:00.43 migration/1
    6 root      15  -5     0    0    0 S    0  0.0   0:03.29 ksoftirqd/1
    7 root      15  -5     0    0    0 S    0  0.0   0:01.27 events/0
    8 root      15  -5     0    0    0 S    0  0.0   0:01.08 events/1
    9 root      15  -5     0    0    0 S    0  0.0   0:00.00 khelper
   51 root      15  -5     0    0    0 S    0  0.0   0:00.00 kintegrityd/0
   52 root      15  -5     0    0    0 S    0  0.0   0:00.00 kintegrityd/1
   53 root      15  -5     0    0    0 S    0  0.0   0:00.19 kblockd/0
   54 root      15  -5     0    0    0 S    0  0.0   0:00.00 kblockd/1
   56 root      15  -5     0    0    0 S    0  0.0   0:00.00 kacpid
   57 root      15  -5     0    0    0 S    0  0.0   0:00.00 kacpi_notify
  131 root      15  -5     0    0    0 S    0  0.0   0:00.00 kseriod
  173 root      20   0     0    0    0 S    0  0.0   0:00.00 pdflush
  174 root      20   0     0    0    0 S    0  0.0   0:02.28 pdflush
  175 root      15  -5     0    0    0 S    0  0.0   0:00.27 kswapd0
  216 root      15  -5     0    0    0 S    0  0.0   0:00.00 aio/0
  217 root      15  -5     0    0    0 S    0  0.0   0:00.00 aio/1
  369 root      15  -5     0    0    0 S    0  0.0   0:00.00 kpsmoused
  389 root      15  -5     0    0    0 S    0  0.0   0:00.00 ksuspend_usbd
  390 root      15  -5     0    0    0 S    0  0.0   0:00.00 khubd
  424 root      15  -5     0    0    0 S    0  0.0   0:32.94 ata/0
Comment 2 Steve Bond 2009-08-10 07:51:35 UTC
$ plasma-desktop --version
Qt: 4.5.2
KDE: 4.3.00 (KDE 4.3.0)
Plasma Workspace: 0.3
Comment 3 Steve Bond 2009-08-17 08:19:48 UTC
Created attachment 36204 [details]
Strace output

the strace output suggests that plasma is busy reading all mounted file-systems.
Comment 4 Vovochka 2009-09-15 04:59:53 UTC
Got the same problem.
Comment 5 Carsten Obel Mortensen 2009-10-04 00:11:18 UTC
This must be very much the same issue as in bug# 206317 - here I have very high memory- and cpu usage over a short period of time (15 minutes) in Plasma-desktop and Kded4 processes. Krunner also have a minor rising memory consumption.

/Carsten - Denmark
Comment 6 mps 2009-10-30 11:30:51 UTC
I have a very similar problem:

Tasks: 180 total,   3 running, 175 sleeping,   0 stopped,   2 zombie
Cpu(s): 22.3%us,  5.3%sy,  0.0%ni, 71.7%id,  0.0%wa,  0.2%hi,  0.5%si,  0.0%st
Mem:   4006304k total,  3875864k used,   130440k free,   168708k buffers
Swap:  6060052k total,    45240k used,  6014812k free,  1173776k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 2088 root      20   0  959m 591m 7220 R 22.6 15.1 170:15.62 Xorg
 2542 malc      20   0 1559m 203m  31m S 13.3  5.2 131:43.39 plasma-desktop
 2538 malc      20   0  710m 169m  26m S  5.3  4.3  30:22.70 kwin
16554 malc      20   0  625m  90m  23m S  5.0  2.3   0:19.45 firefox
 2761 malc      20   0  422m  11m 9.9m S  2.3  0.3  29:29.01 pulseaudio
 2602 malc      20   0  294m  72m  16m S  2.0  1.8   9:20.39 skype
 1303 root      15  -5     0    0    0 S  1.7  0.0   0:55.09 kcryptd
 2742 malc      20   0  458m  19m  10m S  1.7  0.5  12:13.07 pavucontrol
 2677 malc      20   0 2091m 273m  70m S  0.7  7.0   5:34.72 scalc.bin

It takes about 15 minutes for plasma to get slow (1-2 second delay from clicking on kickoff icon to menu appearing etc).

Qt: 4.5.3
KDE: 4.3.2 (KDE 4.3.2)
Plasma Workspace: 0.3

Running on Fedora 11.

If i remove the systray, the problem persists.
If I remove all widgets and set backgrounds to blank, it persists.
Turning off compositing does not solve the problem.
It doesn't matter whether I have one activity per desktop or not, the problem persists.
It persists with no running programs.
(I have rebooted in between these changes).

Not sure what else to try...

cheers
M.
Comment 7 Carsten Obel Mortensen 2009-10-30 11:36:34 UTC
I think the new Kde will solve the problem - I think that was what did
it for me.
/Carsten


2009/10/30 mps <moabi2000@gmail.com>:
> https://bugs.kde.org/show_bug.cgi?id=200184
>
>
> mps <moabi2000@gmail.com> changed:
>
>           What    |Removed                     |Added
> ----------------------------------------------------------------------------
>                 CC|                            |moabi2000@gmail.com
>
>
>
>
> --- Comment #6 from mps <moabi2000 gmail com>  2009-10-30 11:30:51 ---
>
> I have a very similar problem:
>
> Tasks: 180 total,   3 running, 175 sleeping,   0 stopped,   2 zombie
> Cpu(s): 22.3%us,  5.3%sy,  0.0%ni, 71.7%id,  0.0%wa,  0.2%hi,  0.5%si,  0.0%st
> Mem:   4006304k total,  3875864k used,   130440k free,   168708k buffers
> Swap:  6060052k total,    45240k used,  6014812k free,  1173776k cached
>
>  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
>  2088 root      20   0  959m 591m 7220 R 22.6 15.1 170:15.62 Xorg
>  2542 malc      20   0 1559m 203m  31m S 13.3  5.2 131:43.39 plasma-desktop
>  2538 malc      20   0  710m 169m  26m S  5.3  4.3  30:22.70 kwin
> 16554 malc      20   0  625m  90m  23m S  5.0  2.3   0:19.45 firefox
>  2761 malc      20   0  422m  11m 9.9m S  2.3  0.3  29:29.01 pulseaudio
>  2602 malc      20   0  294m  72m  16m S  2.0  1.8   9:20.39 skype
>  1303 root      15  -5     0    0    0 S  1.7  0.0   0:55.09 kcryptd
>  2742 malc      20   0  458m  19m  10m S  1.7  0.5  12:13.07 pavucontrol
>  2677 malc      20   0 2091m 273m  70m S  0.7  7.0   5:34.72 scalc.bin
>
> It takes about 15 minutes for plasma to get slow (1-2 second delay from
> clicking on kickoff icon to menu appearing etc).
>
> Qt: 4.5.3
> KDE: 4.3.2 (KDE 4.3.2)
> Plasma Workspace: 0.3
>
> Running on Fedora 11.
>
> If i remove the systray, the problem persists.
> If I remove all widgets and set backgrounds to blank, it persists.
> Turning off compositing does not solve the problem.
> It doesn't matter whether I have one activity per desktop or not, the problem
> persists.
> It persists with no running programs.
> (I have rebooted in between these changes).
>
> Not sure what else to try...
>
> cheers
> M.
>
> --
> Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
> ------- You are receiving this mail because: -------
> You are a voter for the bug.
> You are on the CC list for the bug.
>
Comment 8 Carsten Obel Mortensen 2009-10-30 11:39:08 UTC
ok - I can see that you are using the new Kde - that spoils my theory
- In Kubuntu it did the trick.

2009/10/30 mps <moabi2000@gmail.com>:
> https://bugs.kde.org/show_bug.cgi?id=200184
>
>
> mps <moabi2000@gmail.com> changed:
>
>           What    |Removed                     |Added
> ----------------------------------------------------------------------------
>                 CC|                            |moabi2000@gmail.com
>
>
>
>
> --- Comment #6 from mps <moabi2000 gmail com>  2009-10-30 11:30:51 ---
>
> I have a very similar problem:
>
> Tasks: 180 total,   3 running, 175 sleeping,   0 stopped,   2 zombie
> Cpu(s): 22.3%us,  5.3%sy,  0.0%ni, 71.7%id,  0.0%wa,  0.2%hi,  0.5%si,  0.0%st
> Mem:   4006304k total,  3875864k used,   130440k free,   168708k buffers
> Swap:  6060052k total,    45240k used,  6014812k free,  1173776k cached
>
>  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
>  2088 root      20   0  959m 591m 7220 R 22.6 15.1 170:15.62 Xorg
>  2542 malc      20   0 1559m 203m  31m S 13.3  5.2 131:43.39 plasma-desktop
>  2538 malc      20   0  710m 169m  26m S  5.3  4.3  30:22.70 kwin
> 16554 malc      20   0  625m  90m  23m S  5.0  2.3   0:19.45 firefox
>  2761 malc      20   0  422m  11m 9.9m S  2.3  0.3  29:29.01 pulseaudio
>  2602 malc      20   0  294m  72m  16m S  2.0  1.8   9:20.39 skype
>  1303 root      15  -5     0    0    0 S  1.7  0.0   0:55.09 kcryptd
>  2742 malc      20   0  458m  19m  10m S  1.7  0.5  12:13.07 pavucontrol
>  2677 malc      20   0 2091m 273m  70m S  0.7  7.0   5:34.72 scalc.bin
>
> It takes about 15 minutes for plasma to get slow (1-2 second delay from
> clicking on kickoff icon to menu appearing etc).
>
> Qt: 4.5.3
> KDE: 4.3.2 (KDE 4.3.2)
> Plasma Workspace: 0.3
>
> Running on Fedora 11.
>
> If i remove the systray, the problem persists.
> If I remove all widgets and set backgrounds to blank, it persists.
> Turning off compositing does not solve the problem.
> It doesn't matter whether I have one activity per desktop or not, the problem
> persists.
> It persists with no running programs.
> (I have rebooted in between these changes).
>
> Not sure what else to try...
>
> cheers
> M.
>
> --
> Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
> ------- You are receiving this mail because: -------
> You are a voter for the bug.
> You are on the CC list for the bug.
>
Comment 9 Steve Bond 2009-11-04 07:19:13 UTC
Yup! I upgraded to KDE 4.3.2 and the problem is still there. What your comment in Bug 206317 says "it must be the upgrade to Kde-4.3.3 that did the magic". Hmmm... Haven't tried 4.3.3 yet. Waiting ever so eagerly for kubuntu 9.10.

(In reply to comment #8)
> ok - I can see that you are using the new Kde - that spoils my theory
> - In Kubuntu it did the trick.
>
Comment 10 Carsten Obel Mortensen 2009-11-04 12:12:47 UTC
hi again

I think must have been a bit drunk when i wrote Kde 4.3.3 - it came
out yesterday ;o) Kubuntu 9.10 has been out since October 29th so grab
it and install it today - it's good - and who knows, maybe it does do
the trick ;o)

/Carsten


2009/11/4 Steve Bond <bond4urisonly@gmail.com>:
> https://bugs.kde.org/show_bug.cgi?id=200184
>
>
>
>
>
> --- Comment #9 from Steve Bond <bond4urisonly gmail com>  2009-11-04 07:19:13 ---
> Yup! I upgraded to KDE 4.3.2 and the problem is still there. What your comment
> in Bug 206317 says "it must be the upgrade to Kde-4.3.3 that did the magic".
> Hmmm... Haven't tried 4.3.3 yet. Waiting ever so eagerly for kubuntu 9.10.
>
> (In reply to comment #8)
>> ok - I can see that you are using the new Kde - that spoils my theory
>> - In Kubuntu it did the trick.
>>
>
> --
> Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
> ------- You are receiving this mail because: -------
> You are a voter for the bug.
> You are on the CC list for the bug.
>
Comment 11 mps 2009-11-11 18:29:59 UTC
FWIW I have found that doing a quick:

kwin --replace 

seems to reset it without me requiring to log out and in again. Takes a while after that to get back to where it was.

So is the bug more likely in kwin?

cheers
M.
Comment 12 Aaron J. Seigo 2009-11-11 20:50:39 UTC
@mps: either kwin or, probably more likely, something below kwin in x.org.

does ding a kwin --restart help others on this report as well?

btw, the "no identifiable reason, there's a leak *somewhere*" type reports end up getting closed as unfixable after some period of time. the reason is that without a clear cause we can point to (such as a specific widget, a specific usage pattern) they aren't identifiable from a bug report and it just collects random reports about other unrelated issues of similar "mystery memory leak" proportions.

so it's really important that the people who can replicate this track down the cause of the problem.

to the original reporter:

"I have no widgets running and all
desktop effects are disabled. So cannot blame it on a leak in some widget."

that's highly unlikely. kickoff, the pager, the tasks widget, the system tray, the clock ... those are all widgets.
Comment 13 Carsten Obel Mortensen 2009-11-18 20:29:21 UTC
When I installed Karmic Koala and updated Kde to 4.3.3 all of my problems disappeared - plasma-desktop, kded4, krunner and kmix was now rock steady and did never use too much memory or cpu - everything was normal. but suddenly all of the problems I thought was gone have reappeared - all of the above mentioned programs now again accumulate memory - specially plasma-desktop just like the "old days" before Karmic.
I have absolutely no idea about what could have happened but it must be an update reintroducing some old error - have anyone experienced this?

/Carsten
Comment 14 Mathieu Jobin 2009-11-26 04:41:52 UTC
I have not tried 4.3.3 yet. but I can definitely experience this problem.
I have a desktop computer I stricktly use to watch movies on a projector. but I keep it on all the time to SSH in and other stuff. my KDE session is always on. but I dont watch movies everyday.

some day I turn on the projector and start a movie and I can notice the movie is very slow. It's not the first time so I know what to do. I press ALT-F2, check system process list. plasma-desktop is on the top taking all the CPU and a lot of RAM. I kill it. and restart plasma-desktop with ALT-F2 ( I will try kwin --replace to see if it does the same but every time I kill... )

then after that I am good for several days. I only have default plasma widget. such as systray, taskmanager, the stuff that comes by default. as I dont use this computer for work.

i dont know If I could rerun the plasma-desktop in some sort of profiler of your choice to help you pin-point the problem. it would be a pleasure for me to help and get this bug fix.

please remember that every time we complain, it is because we love your software.

thanks
Comment 15 Beat Wolf 2009-12-21 12:08:33 UTC
*** Bug 219246 has been marked as a duplicate of this bug. ***
Comment 16 white-wind 2009-12-21 18:13:37 UTC
I have the same problem. "kwin --replace" didn`t help.
Comment 17 Sebastian Kügler 2009-12-22 23:32:09 UTC
If possible, can you do the following:

1.) install debugging packages for kdelibs and kdebase workspace
2.) wait until the problem arises
3.) Attach the gdb debugger to the running plasma: gdb --pid=`pidof plasma-desktop` 
4.) enter "bt" into gdb and hit enter
5.) post the resulting backtrace here

This should show what Plasma is doing with all the CPU cycles it's wasting
Comment 18 Carsten Obel Mortensen 2009-12-23 18:35:22 UTC
when I try this method gdb returns "no stack" am I doing something wrong?

I have tried the following methods:

gdb --pid='pidof plasma-desktop'

and

gdb --pid='plasma-desktop'

and they return "Illegal process-id: pidof plasma-desktop." and
"Illegal process-id: plasma-desktop."



2009/12/22 Sebastian Kügler <sebas@kde.org>:
> https://bugs.kde.org/show_bug.cgi?id=200184
>
>
> Sebastian Kügler <sebas@kde.org> changed:
>
>           What    |Removed                     |Added
> ----------------------------------------------------------------------------
>                 CC|                            |sebas@kde.org
>
>
>
>
> --- Comment #17 from Sebastian Kügler <sebas kde org>  2009-12-22 23:32:09 ---
> If possible, can you do the following:
>
> 1.) install debugging packages for kdelibs and kdebase workspace
> 2.) wait until the problem arises
> 3.) Attach the gdb debugger to the running plasma: gdb --pid=`pidof plasma-desktop`
> 4.) enter "bt" into gdb and hit enter
> 5.) post the resulting backtrace here
>
> This should show what Plasma is doing with all the CPU cycles it's wasting
>
> --
> Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
> ------- You are receiving this mail because: -------
> You are a voter for the bug.
> You are on the CC list for the bug.
Comment 19 ren 2009-12-23 18:56:10 UTC
You need to surround `pidof plasma-desktop` with backticks (`), not regular single quotes ('). The backticks are a special shell notation that executes the command inside them and then puts the return value into the outside command.

In this case "pidof plasma-desktop" will return its process ID, e.g. 2116. Then it will execute "gdb --pid 2116" with the appripriate PID so that GDB can find the right process to attach to. You can do this in two steps yourself, but Sebastian put it in one line to make it faster to copy/paste.
Comment 20 white-wind 2009-12-24 07:05:59 UTC
I hope it`s what you need, but I have some problems with debugsource packages in OpenSuse:

#0  0xffffe424 in __kernel_vsyscall ()
#1  0xb5ef7d5e in poll () from /lib/libc.so.6
#2  0xb5d8ecab in g_poll () from /usr/lib/libglib-2.0.so.0
#3  0xb5d81bc1 in ?? () from /usr/lib/libglib-2.0.so.0
#4  0xb5d81ebe in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#5  0xb762b011 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0xb624529a in ?? () from /usr/lib/libQtGui.so.4
#7  0xb75fd98d in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#8  0xb75fddd9 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#9  0xb7600270 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#10 0xb61a3774 in QApplication::exec() () from /usr/lib/libQtGui.so.4
#11 0xb303fb49 in kdemain () from /usr/lib/libkdeinit4_plasma-desktop.so
#12 0x0804e147 in _start ()
Comment 21 Steve Bond 2009-12-31 14:20:32 UTC
Here's the stackdump from my desktop
#0  0xb759a2d7 in QString::operator== () from /usr/lib/libQtCore.so.4                
#1  0xb5bc65ef in QDBusConnection::connect () from /usr/lib/libQtDBus.so.4           
#2  0xb5bc6854 in QDBusConnection::connect () from /usr/lib/libQtDBus.so.4           
#3  0xb5a69b73 in ?? () from /usr/lib/libsolid.so.4                                  
#4  0xb5a6eca0 in ?? () from /usr/lib/libsolid.so.4                                  
#5  0xb5a33679 in ?? () from /usr/lib/libsolid.so.4                                  
#6  0xb5a35a4b in ?? () from /usr/lib/libsolid.so.4                                  
#7  0xb5a32c0f in Solid::Device::Device () from /usr/lib/libsolid.so.4
#8  0xb5a32cfc in Solid::Device::parent () from /usr/lib/libsolid.so.4
#9  0xa8874ec1 in Kickoff::SystemModel::mapFromSource () from /usr/lib/libkickoff.so
#10 0xa887747d in Kickoff::SystemModel::freeSpaceInfoAvailable () from /usr/lib/libkickoff.so
#11 0xa8877189 in Kickoff::SystemModel::freeSpaceInfoAvailable () from /usr/lib/libkickoff.so
#12 0xa8877189 in Kickoff::SystemModel::freeSpaceInfoAvailable () from /usr/lib/libkickoff.so
#13 0xa8877189 in Kickoff::SystemModel::freeSpaceInfoAvailable () from /usr/lib/libkickoff.so
#14 0xa8877189 in Kickoff::SystemModel::freeSpaceInfoAvailable () from /usr/lib/libkickoff.so
#15 0xa88779d1 in Kickoff::SystemModel::startRefreshingUsageInfo () from /usr/lib/libkickoff.so
#16 0xa8877ae4 in Kickoff::SystemModel::qt_metacall () from /usr/lib/libkickoff.so
#17 0xb7662144 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#18 0xb7662e65 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#19 0xb769da15 in QTimer::timeout () from /usr/lib/libQtCore.so.4
#20 0xb7667a76 in QTimer::timerEvent () from /usr/lib/libQtCore.so.4
#21 0xb765bdfb in QObject::event () from /usr/lib/libQtCore.so.4
#22 0xb61d268c in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4
#23 0xb61da0ce in QApplication::notify () from /usr/lib/libQtGui.so.4
#24 0xb6c33a21 in KApplication::notify () from /usr/lib/libkdeui.so.5
#25 0xb764bc0e in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4
#26 0xb767a2c1 in ?? () from /usr/lib/libQtCore.so.4
#27 0xb7677c05 in ?? () from /usr/lib/libQtCore.so.4
#28 0xb5dc1b92 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#29 0xb5dc5468 in ?? () from /usr/lib/libglib-2.0.so.0
#30 0xb5dc558e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#31 0xb76778f1 in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4
#32 0xb62744ba in ?? () from /usr/lib/libQtGui.so.4
#33 0xb764a26d in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#34 0xb764a6b9 in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#35 0xb764cb50 in QCoreApplication::exec () from /usr/lib/libQtCore.so.4
---Type <return> to continue, or q <return> to quit---
#36 0xb61d2504 in QApplication::exec () from /usr/lib/libQtGui.so.4
#37 0xb3e6bbd9 in kdemain () from /usr/lib/libkdeinit4_plasma-desktop.so
#38 0x0804da54 in _start ()
Comment 22 Steve Bond 2009-12-31 14:32:11 UTC
(In reply to comment #12)
> to the original reporter:
> 
> "I have no widgets running and all
> desktop effects are disabled. So cannot blame it on a leak in some widget."
> 
> that's highly unlikely. kickoff, the pager, the tasks widget, the system tray,
> the clock ... those are all widgets.

I had removed everything other than kickoff and the tasks widget (even got rid of the clock and the pager). My earlier strace output attachment (Comment#3) showed plasma bing busy reading all mounted file-systems. And now, in the stack dump above we can see multiple calls to Kickoff::SystemModel::freeSpaceInfoAvailable ().
Hence, I might have been wrong not to blame the widgets and am now a bit suspicious about Kickoff.
Comment 23 Steve Bond 2010-01-11 07:06:23 UTC
Here's something that might be useful for debugging the issue. When the problem occurred, I removed the "Application Launcher" from the panel; and guess what!!! plasma memory and cpu usage came down drastically. Hope this helps.
Comment 24 Carsten Obel Mortensen 2010-01-11 11:32:06 UTC
Unfortunately no effect on my system, i use kde 4.4 rc1 - maybe that's why
Comment 25 Aaron J. Seigo 2010-01-11 19:16:54 UTC
@Steve Bond: i've just committed a massive clean up of that code as a result of your investigations. in fact, after looking at the backtrace you provided i looked at that code and just about retched. :/ it should now be much better behaved and even have zero overhead now for those using the "classic menu" version of kickoff which doesn't even use that information. 

i'm waiting on further testing of the changes before backporting it to 4.4, but i fully expect it to land in 4.4.0.
Comment 26 Steve Bond 2010-01-12 07:22:59 UTC
Here's some more news. I have removed Kickoff and am using a classic "Application Launcher Menu" widget (not sure if it is provided by KDE or Mandriva) instead. There has been no significant increase to the plasma memory size or cpu usage for the past three days. Hence I suggest people facing this problem to use menus provided by their distro instead of Kickoff, until Aaron's fix is committed. Please update if doing so makes any difference.
Comment 27 white-wind 2010-01-12 09:22:20 UTC
Steve, your solution works for me too. I have switched to the clasical menu and found normal CPU load (I didn`t check memory because I have 6gb of it, so I didn`t mention it at all). So kickoff was my headake too.
Comment 28 Steve Bond 2010-01-21 14:32:13 UTC
*** This bug has been confirmed by popular vote. ***
Comment 29 Doug Roberts 2010-02-08 16:41:09 UTC
I was having the same plasma memory leak issues, and found the elegant work-around described in the link below.  I like Openbox a lot better than kwin, now that I've used it for a bit.

The work-around is described here:  

http://postralphaelite.blogspot.com/2009/09/kde-4-memory-leak-follow-up.html

--Doug
Comment 30 Aaron J. Seigo 2010-02-08 18:15:32 UTC
SVN commit 1087230 by aseigo:

backport r1073143:

* make the reading of disk usage actually async (e.g. we return between each device check)
* don't check every 10s (wtf?!), but only when requested; this moves it into the hands of the visualization

what this means is that plasma sleeps more, disks are accessed less, far fewer data members in the SystemModel class and far more readable code. probably too late for 4.4.0, which is unfortunate but my fault since it fell off my "to backport" list before it was actually backported. if there is movement in the tag in kdebase for other reasons, it would be nice if this was captured as well. distributions may also want to grab it for their 4.4 packages until 4.4.1 is out.

CCBUG:200184
CCMAIL:release-team@kde.org


 M  +46 -87    core/systemmodel.cpp  
 M  +3 -4      core/systemmodel.h  
 M  +5 -2      ui/launcher.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1087230
Comment 31 Doug Roberts 2010-02-15 02:47:08 UTC
I finally gave up on KDE until the memory leak issues are resolved.  The workaround solution that I described above (switch from kwin to OpenBox) does not work after all.   I can run for about three days before needing to logout because I am maxed out on virtual memory and will soon I go into a page file death-spiral.

I've switched to xfce4.  Not as much eye candy, but no killer memory leaks either.
Comment 32 Doug Roberts 2010-03-04 00:15:46 UTC
Good news:  this problem appears to be fixed in KDE 4.4.1.  plasma-desktop memory usage has remained steady at 15.4 M for 24 hours, not continuously growing as before.

Kubuntu 9.10, AMD 64.
Comment 33 Steve Bond 2010-03-24 06:38:02 UTC
Problem not seen in KDE 4.4.1. Marking fixed.