Commit 5776cecc authored by Waiman Long's avatar Waiman Long Committed by Tejun Heo
Browse files

cpuset: Expose cpus.effective and mems.effective on cgroup v2 root



Because of the fact that setting the "cpuset.sched.partition" in
a direct child of root can remove CPUs from the root's effective CPU
list, it makes sense to know what CPUs are left in the root cgroup for
scheduling purpose. So the "cpuset.cpus.effective" control file is now
exposed in the v2 cgroup root.

For consistency, the "cpuset.mems.effective" control file is exposed
as well.

Signed-off-by: default avatarWaiman Long <longman@redhat.com>
Acked-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: default avatarTejun Heo <tj@kernel.org>
parent 0ccea8fe
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1653,7 +1653,7 @@ Cpuset Interface Files
	and won't be affected by any CPU hotplug events.

  cpuset.cpus.effective
	A read-only multiple values file which exists on non-root
	A read-only multiple values file which exists on all
	cpuset-enabled cgroups.

	It lists the onlined CPUs that are actually granted to this
@@ -1693,7 +1693,7 @@ Cpuset Interface Files
	and won't be affected by any memory nodes hotplug events.

  cpuset.mems.effective
	A read-only multiple values file which exists on non-root
	A read-only multiple values file which exists on all
	cpuset-enabled cgroups.

	It lists the onlined memory nodes that are actually granted to
+0 −2
Original line number Diff line number Diff line
@@ -2574,14 +2574,12 @@ static struct cftype dfl_files[] = {
		.name = "cpus.effective",
		.seq_show = cpuset_common_seq_show,
		.private = FILE_EFFECTIVE_CPULIST,
		.flags = CFTYPE_NOT_ON_ROOT,
	},

	{
		.name = "mems.effective",
		.seq_show = cpuset_common_seq_show,
		.private = FILE_EFFECTIVE_MEMLIST,
		.flags = CFTYPE_NOT_ON_ROOT,
	},

	{