Hello:
I have two machines running Archlinux with x2goserver running from arch repository packages that both exhibit abnormally high CPU usage in ksoftirqd/x (where x=the cpu core #). Here is an example top output showing the usage while idle - ksoftirqd is always the top user of CPU when the system is idle:
top - 13:27:42 up 27 days, 16:27, 8 users, load average: 0.84, 0.63, 0.49 Tasks: 326 total, 1 running, 325 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.6/0.7 1[|| ] GiB Mem : 26.9/15.574 [ ] GiB Swap: 5.4/16.000 [ ]
PID USER PR NI VIRT RES %CPU %MEM TIME+ S COMMAND 45 root 20 0 0.0m 0.0m 4.0 0.0 478:55.34 S ksoftirqd/7 65 root 20 0 0.0m 0.0m 2.6 0.0 417:08.28 S ksoftirqd/11 25 root 20 0 0.0m 0.0m 2.0 0.0 109:05.16 S ksoftirqd/3 60 root 20 0 0.0m 0.0m 2.0 0.0 523:14.28 S ksoftirqd/10 9180 rettw 20 0 2663.9m 1.321g 2.0 8.5 16:08.16 S VBoxHeadless 50 root 20 0 0.0m 0.0m 1.3 0.0 527:10.22 S ksoftirqd/8 9236 rettw 20 0 1588.0m 371.6m 1.3 2.3 2:29.45 S VBoxHeadless 3 root 20 0 0.0m 0.0m 0.7 0.0 392:21.72 S ksoftirqd/0 30 root 20 0 0.0m 0.0m 0.7 0.0 133:12.11 S ksoftirqd/4 55 root 20 0 0.0m 0.0m 0.7 0.0 463:32.57 S ksoftirqd/9 1005 rettw 20 0 3058.8m 66.6m 0.7 0.4 29:58.26 S kwin 8502 root 20 0 35.1m 3.7m 0.7 0.0 0:13.56 R top 30713 rettw 20 0 605.3m 22.2m 0.7 0.1 6:45.55 S konsole 1 root 20 0 33.6m 4.1m 0.0 0.0 0:18.42 S systemd 2 root 20 0 0.0m 0.0m 0.0 0.0 0:00.32 S kthreadd
If I stop the x2goserver process, the ksoftirqd processes drop down to almost nothing. This seems to coincide with the 3.18 and 3.19 linux kernel series.
Could this be some sort of interaction between x2goserver and the kernel?
System specs:
i7-5930k w/16G DDR4 2133 RAM MSI X99 SLI-Plus GTX 470 LSI SAS2008 Disk controller card Archlinux latest packages - kernel version 3.18.6-1-ARCH KDE, Xorg, Nvidia binary blob video driver
Second system with the issue:
i7-3930k w/16G DDR3 1600 RAM Asus Sabertooth X79 GTX 970 Archlinux latest packages - kernel version 3.19.2-1-ARCH KDE, Xorg, Nvidia binary blob video driver
I have several other arch systems as well, but none of them have x2goserver running on them and therefore don't exhibit the ksoftirqd cpu usage.
Archlinux x2goserver package version: extra/x2goserver 4.0.1.19-2
Doesn't seem to impact the system much, just thought it seemed a bit abnormal for this to generate that much soft irq activity.
-- Rett Walters
Hi Rett,
On 01.04.2015 08:38 PM, Rett Walters wrote:
What process are you talking about specifically? "x2goserver" as such has no daemon process, aside from the "x2gocleansessions" script that is meant to cleanup after sessions terminated etc.
If you mean the daemon started via the x2goserver systemd unit, that's likely x2gocleansessions. It should be running consistently, but not cause high CPU stress due to the fact it's only running its main loop every two seconds. Maybe that needs to be raised, but I doubt it.
Did you ever see this behavior change, i.e., did older kernel versions not exhibit this behavior?
My Gentoo-based box running 3.19.0 doesn't show this problem. ksoftirq is, if at all, causing 0.5% CPU load with x2gocleansessions running. But my hardware is, naturally, different from your's, too.
Mihai
Mihai:
Yes - your right its the systemd unit called x2goserver, and it does appear to just start x2gocleansessions script. I will do some testing with older kernels to see if the problem is still present.
Thanks for the quick response.
Rett Walters
On Wed, Apr 1, 2015 at 3:11 PM, Mihai Moldovan <ionic@ionic.de> wrote:
-- Rett Walters www.linuxpoweruser.com
For what it's worth, I installed a 3.19.3 kernel on a Ubuntu box that
formerly had a 3.16.32 kernel, and upon doing so saw this same behavior where I had not with the 3.16.32 kernel.
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_- Eskimo North Linux Friendly Internet Access, Shell Accounts, and Hosting. Knowledgeable human assistance, not telephone trees or script readers. See our web site: http://www.eskimo.com/ (206) 812-0051 or (800) 246-6874.
On Thu, 2 Apr 2015, Rett Walters wrote:
On 02.04.2015 04:09 PM, Rett Walters wrote:
This may look sort-of related: http://www.spinics.net/lists/kernel/msg1937202.html
But that patch was included in 3.19.1 -- so if that patch was fixing the regression, you shouldn't see it on your Sabertooth machine (3.19.2) anymore.
Maybe x2gocleansessions is polling too often (although it really looks more like a kernel issue than a issue with x2gocleansessions.)
The polling was lowered to every 2 seconds two years ago: http://code.x2go.org/gitweb?p=x2goserver.git;a=commitdiff;h=dd176a90d04b64e
Maybe changing this back to 5 seconds behaves better on your system? That may have consequences I'm unable to foresee, though.
In any case, this problem should be reported to the Linux Kernel project. Maybe there are other instances of this issue.
Mihai
Hi Mihai, hi Rett,
On Do 02 Apr 2015 23:57:44 CEST, Mihai Moldovan wrote:
the threshold was lowered to two seconds for a smoother interaction
between X2Go Server and X2Go Session Broker IIRC.
DAS-NETZWERKTEAM mike gabriel, herweg 7, 24357 fleckeby fon: +49 (1520) 1976 148
GnuPG Key ID 0x25771B31 mail: mike.gabriel@das-netzwerkteam.de, http://das-netzwerkteam.de
freeBusy: https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xf...