[PATCHSET] cpuset: drop cpuset->stack_list and ->parent, take#2

Tejun Heo
2013-01-03T21:44:14Z

Hello, guys.

This is the second take of "drop cpuset->stack_list and ->parent"
patchset. Other than being rebased on top of v3.8-rc2 + "cpuset:
decouple cpuset locking from cgroup core, take#2", nothing really has
changed.

The original patchset description follows.

cpuset implements its own descendant iteration using
cpuset->stack_list and has its own ->parent pointer. There's nothing
cpuset specific about descendant walking or finding the parent. This
patchset makes cpuset use cgroup generic API instead.

0001-cpuset-implement-cgroup_rightmost_descendant.patch
0002-cpuset-replace-cpuset-stack_list-with-cpuset_for_eac.patch
0003-cpuset-remove-cpuset-parent.patch

0001 implements cgroup_rightmost_descendant() which can be used to
skip subtree during pre-order tree walk. Michal, maybe memcg can use
it too?

0002 replaces cpuset->stack_list with generic
for_each_descendasnt_pre().

0003 replaces cpuset->parent with cgroup->parent.

This patchset is on top of

v3.8-rc2 d1c3ed669a2d452cacfb48c2d171a1f364dae2ed
+ [1] "[PATCHSET cgroup/for-3.8] cpuset: decouple cpuset locking from cgroup core, take#2"

and available in the following git branch.

git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup.git review-cpuset-iter

include/linux/cgroup.h | 1
kernel/cgroup.c | 26 ++++++++
kernel/cpuset.c | 151 +++++++++++++++++++++----------------------------
3 files changed, 92 insertions(+), 86 deletions(-)

Thanks.

--
tejun

[1] http://thread.gmane.org/gmane.linux.kernel.cgroups/5629