[PATCH 00/11] cpuset: separate configured masks and effective masks

From: Li Zefan
Date: Wed Aug 21 2013 - 05:59:01 EST


This patcheset introduces behavior changes, but only if you mount cgroupfs
with sane_behavior option:

- We introduce new interfaces cpuset.effective_cpus and cpuset.effective_mems,
while cpuset.cpus and cpuset.mems will be configured masks.

- The configured masks can be changed by writing cpuset.cpus/mems only. They
won't be changed when hotplug happens.

- Users can config cpus and mems without restrictions from the parent cpuset.
effective masks will enforce the hierarchical behavior.

- Users can also config cpus and mems to have already offlined CPU/nodes.

- When a CPU/node is onlined, it will be brought back to the effective masks
if it's in the configured masks.

- We build sched domains based on effective cpumask but not configured cpumask.

Li Zefan (11):
cgroup: allow subsystems to create files for sane_behavior only
cpuset: add cs->real_cpus_allowed and cs->real_mems_allowed
cpuset: update cpuset->real_{cpus,mems}_allowed at hotplug
cpuset: update cs->real_{cpus,mems}_allowed when config changes
cpuset: inherite ancestor's masks if real_{cpus,mems}_allowed become empty
cpuset: apply cs->real_{cpus,mems}_allowed
cpuset: use effective cpumask to build sched domains
cpuset: separate configured masks and efffective masks
cpuset: enable onlined cpu/node in effective masks
cpuset: allow writing offlined masks to cpuset.cpus/mems
cpuset: export effective masks to userspace

include/linux/cgroup.h | 1 +
kernel/cgroup.c | 2 +
kernel/cpuset.c | 466 ++++++++++++++++++++++++++++---------------------
3 files changed, 271 insertions(+), 198 deletions(-)

--
1.8.0.2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/