From: Lennart Poettering Date: Wed, 21 May 2014 22:50:03 +0000 (+0900) Subject: cgroups: always propagate controller membership to siblings, for all controllers X-Git-Tag: v213~54 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=637f421e5c6ae76f5c59c3badd809bf5f04fca80 cgroups: always propagate controller membership to siblings, for all controllers This is the behaviour the kernel cgroup rework exposes for all controllers, hence let's do this already now for all cases. --- diff --git a/src/core/cgroup.c b/src/core/cgroup.c index 34905892b..36e9f53db 100644 --- a/src/core/cgroup.c +++ b/src/core/cgroup.c @@ -541,18 +541,12 @@ CGroupControllerMask unit_get_members_mask(Unit *u) { } CGroupControllerMask unit_get_siblings_mask(Unit *u) { - CGroupControllerMask m; - assert(u); if (UNIT_ISSET(u->slice)) - m = unit_get_members_mask(UNIT_DEREF(u->slice)); - else - m = unit_get_cgroup_mask(u) | unit_get_members_mask(u); + return unit_get_members_mask(UNIT_DEREF(u->slice)); - /* Sibling propagation is only relevant for weight-based - * controllers, so let's mask out everything else */ - return m & (CGROUP_CPU|CGROUP_BLKIO|CGROUP_CPUACCT); + return unit_get_cgroup_mask(u) | unit_get_members_mask(u); } CGroupControllerMask unit_get_target_mask(Unit *u) {