On Fri, 22.05.15 12:41, Jan Engelhardt (jeng...@inai.de) wrote:

> 
> In my kernel, there is CONFIG_SCHED_AUTOGROUP=y set. I believe that since
> systemd is capable of, and is doing grouping on its own, the kernel option has
> no effect. This seems reflected in /sys/fs/cgroups/cpu,cpuacct having
> no subdirectories:

AFAIK autogroup was never reflected in the cgroup tree. 

> 
> 12:34 ares40:../cgroup/cpu,cpuacct > ls -Fax
> ./                   ../                  cgroup.clone_children cgroup.procs
> cgroup.sane_behavior cpu.cfs_period_us    cpu.cfs_quota_us      
> cpu.rt_period_us
> cpu.rt_runtime_us    cpu.shares           cpu.stat              cpuacct.stat
> cpuacct.usage        cpuacct.usage_percpu notify_on_release     release_agent
> tasks
> 
> 
> As a result of this, all processes get equal shares, rather than all
> SID groups getting equal shares, causing BOINC to outmonopolize VirtualBox:
> 
> 
> /$ systemd-cgls
> ├─1 /usr/lib/systemd/systemd --switched-root --system --deserialize 20
> [...]
> └─user.slice
>   └─user-25121.slice
>     ├─session-3.scope
>     │ ├─  376 
> ../../projects/boinc.fzk.de_poem/poempp_2.21_x86_64-pc-linux-gn...
>     │ ├─ 2200 
> ../../projects/boinc.fzk.de_poem/poempp_2.21_x86_64-pc-linux-gn...
>     │ ├─ 2578 
> ../../projects/boinc.fzk.de_poem/poempp_2.21_x86_64-pc-linux-gn...
>     │ ├─ 2826 
> ../../projects/boinc.fzk.de_poem/poempp_2.21_x86_64-pc-linux-gn...
>     │ ├─ 3162 
> ../../projects/boinc.fzk.de_poem/poempp_2.21_x86_64-pc-linux-gn...
>     │ ├─ 3697 SCREEN
>     │ ├─ 3698 -/bin/bash
>     │ ├─ 6070 
> ../../projects/boinc.fzk.de_poem/poempp_2.21_x86_64-pc-linux-gn...
>     │ ├─ 6554 
> ../../projects/boinc.fzk.de_poem/poempp_2.21_x86_64-pc-linux-gn...
>     │ ├─14171 /usr/lib/virtualbox/VBoxXPCOMIPCD
>     │ ├─14176 /usr/lib/virtualbox/VBoxSVC --auto-shutdown
>     │ ├─14255 /usr/lib/virtualbox/VBoxNetDHCP --ip-address 192.168.100.100 
> --...
>     │ ├─25859 boinc
>     │ └─30167 
> ../../projects/boinc.fzk.de_poem/poempp_2.21_x86_64-pc-linux-gn...
> 
> 
> How would one re-enable the SID-style cpuacct grouping with systemd?

Quite frankly I have no idea how the "cpu" controller hierarchy
interacts with autogrouping. 

For normal system services you can ask systemd however to move things
into the "cpu" hierarchy, so that explicit groups are created in
/sys/fs/cgroup/cpu. Do this via "systemctl set-property foobar.service
CPUShares=1500".

But if i see that correctly, your two services are not actually system
services, but session processes. And to that I can only say: this is
simply not supported in systemd and the kernel: since cgroupfs
controller access is security sensitive unprivileged processes will
not get access to anything but the name=systemd cgroup hierarchy, and
hence cannot managed their own set of CPUShares= currently.

Sorry,

Lennart

-- 
Lennart Poettering, Red Hat
_______________________________________________
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel

Reply via email to