Bugzilla – Bug 1016920
High CPU load when copying files
Last modified: 2017-11-10 17:23:26 UTC
There is a bug in plasmashell for Plasma versions < 5.9 https://bugs.kde.org/show_bug.cgi?id=356479 A animation in the task bar (e.g. file copying) causes a high cpu load for the plasmashell process. Because of this the system may become unresponsive. The bug has been fixed upstream but it seems it will not be backported for Plasma 5.8 by the folks at KDE. Users successfully backported this patch several weeks ago and had no problems. openSUSE Leap 42.2 (and probably 42.3) will stay with Plasma 5.8 since it is a LTS release. Therefore it would be nice to apply the patch downstream in openSUSE Leap 42.2.
(In reply to P. Otato from comment #0) > There is a bug in plasmashell for Plasma versions < 5.9 > https://bugs.kde.org/show_bug.cgi?id=356479 > > A animation in the task bar (e.g. file copying) causes a high cpu load for > the plasmashell process. Because of this the system may become unresponsive. > The bug has been fixed upstream but it seems it will not be backported for > Plasma 5.8 by the folks at KDE. Users successfully backported this patch > several weeks ago and had no problems. > openSUSE Leap 42.2 (and probably 42.3) will stay with Plasma 5.8 since it is > a LTS release. Therefore it would be nice to apply the patch downstream in > openSUSE Leap 42.2. We already have a very similiar patch (the workaround patch I posted in that bug report) in the package. It does basically the same and I tested that the solution accepted upstream is actually slightly worse in performance. Thus there was no reason to take the risk and swap the fix in the package. If you can verify that this bug is fixed in the KDE:Frameworks5:LTS repo, we can submit it as update.
(In reply to Fabian Vogt from comment #1) > If you can verify that this bug is fixed in the KDE:Frameworks5:LTS repo, we > can submit it as update. That upstream patch is not yet in KDE:Frameworks5:LTS though. It has been backported to 5.8 upstream, but will only be in 5.8.6.
(In reply to Wolfgang Bauer from comment #2) > (In reply to Fabian Vogt from comment #1) > > If you can verify that this bug is fixed in the KDE:Frameworks5:LTS repo, we > > can submit it as update. > > That upstream patch is not yet in KDE:Frameworks5:LTS though. > It has been backported to 5.8 upstream, but will only be in 5.8.6. That is true, I mixed it up with KDE:Frameworks5 where I removed the tray icon cache. So we need a package with this fix for testing.
(In reply to Fabian Vogt from comment #3) > So we need a package with this fix for testing. I created one, it's available here: http://download.opensuse.org/repositories/home:/wolfi323:/branches:/KDE:/Frameworks5:/LTS/openSUSE_Leap_42.2/ Shall I submit it to KDE:Frameworks5:LTS, or do we want to wait for feedback first?
(In reply to Wolfgang Bauer from comment #4) > (In reply to Fabian Vogt from comment #3) > > So we need a package with this fix for testing. > > I created one, it's available here: > http://download.opensuse.org/repositories/home:/wolfi323:/branches:/KDE:/ > Frameworks5:/LTS/openSUSE_Leap_42.2/ Thanks! > Shall I submit it to KDE:Frameworks5:LTS, or do we want to wait for feedback > first? What about both? :P Just make a request with a note to this bug report's state.
This bug was fixed in the currently released Plasma 5.8.6. Excerpt from the changelog: Systray: Move all icon resolution to dataengine. Commit. Fixes bug #356479. Phabricator Code review D2986 Upstream bug report: https://bugs.kde.org/show_bug.cgi?id=356479 Is it possible to backport the bug fix or update Plasma in Leap 42.2?
(In reply to P. Otato from comment #6) > This bug was fixed in the currently released Plasma 5.8.6. Yes, see comment#2. > Is it possible to backport the bug fix or update Plasma in Leap 42.2? Did you test it as you been asked? We are waiting for your feedback. The current plan is to keep Fabian's patch instead of the upstream fix. See comment#1 and comment#4.
Created attachment 715262 [details] CPU history during file transfer The problem still persists (see attachment above). For a dual-core CPU "top" shows a CPU usage of 53% for kwin_x11, 22% for plasmashell and 13% for X. Switching to wolfi323's repo gave via "zypper dup --from" also gave me some conflicts which could be resolved by changing vendors.
(In reply to P. Otato from comment #8) > Created attachment 715262 [details] > CPU history during file transfer > > The problem still persists (see attachment above). > For a dual-core CPU "top" shows a CPU usage of 53% for kwin_x11, 22% for > plasmashell and 13% for X. Which packages did you try?
(In reply to P. Otato from comment #8) > Switching to wolfi323's repo gave via "zypper dup --from" also gave me some > conflicts which could be resolved by changing vendors. Please try again. That repo still contained 5.8.5, while KDE:Frameworks5:LTS already had 5.8.6. Meanwhile, 5.8.6 has been built there too though. Oh, and in case it wasn't clear, that's to be used on top of KDE:Frameworks5:LTS, it only contains plasma5-workspace with the upstream fix instead of our own. In other words: - Please add KDE:Frameworks5:LTS, upgrade all packages, and test this. - Then additionally upgrade plasma5-workspace to http://download.opensuse.org/repositories/home:/wolfi323:/branches:/KDE:/Frameworks5:/LTS/openSUSE_Leap_42.2 and test again. Which one works better?
Created attachment 715330 [details] htop outputs using Dolphin, Krusader, cp and rsync for file transfer Okay just to make sure, here are the commands I've run: sudo zypper ref && sudo zypper patch sudo zypper ar http://download.opensuse.org/repositories/KDE:/Frameworks5:/LTS/openSUSE_Leap_42.2/ Frameworks5LTS sudo zypper ref && sudo zypper dup --from Frameworks5LTS Rebooted the machine and tested file transfer with a 4GiB iso from a USB stick to my home directory via dolphin, krusader, cp and rsync. After that I've run (no conflicts this time, thanks Wolfgang for updating your repo): sudo zypper ar http://download.opensuse.org/repositories/home:/wolfi323:/branches:/KDE:/Frameworks5:/LTS/openSUSE_Leap_42.2/ WolfgangsRepo sudo zypper ref && sudo zypper dup --from WolfgangsRepo Rebooted the machine again and tested file transfer with a 4GiB iso from a USB stick to my home directory via dolphin, krusader, cp and rsync. Results: First of all, there is no difference in CPU usage during file transfer between (Leap + Frameworks5:LTS) and (Leap + Frameworks5:LTS + home:wolfi323). CPU usage was monitored via htop and ksysguard. ksysguard always showed 100% CPU usage no matter was transfer method was used. htop instead showed a high CPU usage (>60%) for file transfer with Dolphin and Krusader and a low CPU usage (<5%) when cp or rsync was used. Please see the attachment with the output of htop. Moving files with Dolphin and Krusader also gives me an animated icon in the system tray, while cp and rsync don't.
> First of all, there is no difference in CPU usage during file transfer between (Leap + Frameworks5:LTS) and (Leap + Frameworks5:LTS + home:wolfi323). Ok, that means the upstream fix is not effective either. There's nothing we can do at this point, please open a new bug upstream and reopen this one here once a fix or workaround we can apply is available. Just to verify that you're using the right package, run > rpm -q --changelog plasma5-workspace | head and make sure that the first entry starts with "Thu Feb 23 16:18:32 UTC 2017 - wbauer@tmo.at".
(In reply to Fabian Vogt from comment #12) > > First of all, there is no difference in CPU usage during file transfer between (Leap + Frameworks5:LTS) and (Leap + Frameworks5:LTS + home:wolfi323). > > Ok, that means the upstream fix is not effective either. There's nothing we > can do at this point, please open a new bug upstream and reopen this one > here once a fix or workaround we can apply is available. > I'll do that. Thank you both for your attention to this matter and everything you've done. > Just to verify that you're using the right package, run > > > rpm -q --changelog plasma5-workspace | head > > and make sure that the first entry starts with "Thu Feb 23 16:18:32 UTC 2017 > - wbauer@tmo.at". Yeah it does. duda@linux-22y8:~> rpm -q --changelog plasma5-workspace | head * Thu Feb 23 2017 wbauer@***.at - Remove 0001-Revert-Systray-Move-all-icon-resolution-to-dataengin.patch and add-tray-icon-cache.patch to use the upstream fix for "High load due to animated tray icons" (boo#1016920, kde#356479) * Tue Feb 21 2017 fabian@***********.de - Update to 5.8.6 * New bugfix release * For more details please see: * https://www.kde.org/announcements/plasma-5.8.6.php
Problem seems to be fixed. Therefore I'm marking this as report RESOLVED. Thanks to everyone who looked into this!
This is an autogenerated message for OBS integration: This bug (1016920) was mentioned in https://build.opensuse.org/request/show/538488 42.3 / kio https://build.opensuse.org/request/show/538489 Backports:SLE-12-SP3 / kio https://build.opensuse.org/request/show/538497 42.2+Backports:SLE-12-SP1+Backports:SLE-12-SP2 / kio
openSUSE-RU-2017:2974-1: An update that has 7 recommended fixes can now be installed. Category: recommended (moderate) Bug References: 1000946,1016920,1030145,1049975,1051349,969768,978935 CVE References: Sources used: SUSE Package Hub for SUSE Linux Enterprise 12 (src): kio-5.20.0-9.1, kio-5.26.0-8.1
openSUSE-RU-2017:2980-1: An update that has 7 recommended fixes can now be installed. Category: recommended (moderate) Bug References: 1000946,1016920,1030145,1049975,1051349,969768,978935 CVE References: Sources used: openSUSE Leap 42.2 (src): kio-5.26.0-8.3.1
openSUSE-RU-2017:2988-1: An update that has 5 recommended fixes can now be installed. Category: recommended (moderate) Bug References: 1000946,1016920,1049975,1051349,978935 CVE References: Sources used: openSUSE Leap 42.3 (src): kio-5.32.0-5.1
openSUSE-RU-2017:2992-1: An update that has 5 recommended fixes can now be installed. Category: recommended (moderate) Bug References: 1000946,1016920,1049975,1051349,978935 CVE References: Sources used: SUSE Package Hub for SUSE Linux Enterprise 12 (src): kio-5.32.0-5.1