Re: [PATCH] softirq: let ksoftirqd do its job
From: Peter Zijlstra <peterz@infradead.org>
Date: 2016-09-01 12:48:45
Also in:
lkml
On Thu, Sep 01, 2016 at 02:38:59PM +0200, Jesper Dangaard Brouer wrote:
On Thu, 1 Sep 2016 14:29:25 +0200 Jesper Dangaard Brouer [off-list ref] wrote:quoted
On Thu, 1 Sep 2016 13:53:56 +0200 Peter Zijlstra [off-list ref] wrote:quoted
On Thu, Sep 01, 2016 at 01:02:31PM +0200, Jesper Dangaard Brouer wrote:quoted
PID S %CPU TIME+ COMMAND 3 R 50.0 29:02.23 ksoftirqd/0 10881 R 10.7 1:01.61 udp_sink 10837 R 10.0 1:05.20 udp_sink 10852 S 10.0 1:01.78 udp_sink 10862 R 10.0 1:05.19 udp_sink 10844 S 9.7 1:01.91 udp_sink This is strange, why is ksoftirqd/0 getting 50% of the CPU time???Do you run your udp_sink thingy in a cpu-cgroup?That was also Paolo's feedback (IRC). I'm not aware of it, but it might be some distribution (Fedora 22) default thing.Correction, on the server-under-test, I'm actually running RHEL7.2quoted
How do I verify/check if I have enabled a cpu-cgroup?Hannes says I can look in "/proc/self/cgroup" $ cat /proc/self/cgroup 7:net_cls:/ 6:blkio:/ 5:devices:/ 4:perf_event:/ 3:cpu,cpuacct:/ 2:cpuset:/ 1:name=systemd:/user.slice/user-1000.slice/session-c1.scope And that "/" indicate I've not enabled cgroups, right?
Mostly so. I think RHEL/Fedora has SCHED_AUTOGROUP enabled, and you can find that through: cat /proc/self/autogroup And disable with the noautogroup boot param, or: echo 0 > /proc/sys/kernel/sched_autogroup_enabled although this latter will leave the current state intact while avoiding creation of any further autogroups iirc.