This is a revised version of the pids v5 patchset, modified to deal with several stylistic and correctness issues put forward by Tejun Heo. The main changes include: * Add bitmask filtering of for_each_subsys() in the form of for_each_subsys_which(). * Revert all succeeded can_fork() callbacks if any one of them fails inside cgroup_can_fork(). * Move revert/reapply code to a reapply_fork() callback provided by each cgroup controller. It is only run if the association for the specific subsystem changed during the interlude between cgroup_can_fork() and cgroup_post_fork(). * Pass an opaque pointer between cgroup_*_fork(), which holds the "current" task css_set. The css_set is pinned by bumping the refcount in cgroup_can_fork() and later unpinned in cgroup_{cancel,post}_fork(). * A whole bunch of userland API and stylistic fixes. Aleksa Sarai (3): cgroups: use bitmask to filter for_each_subsys cgroups: allow a cgroup subsystem to reject a fork cgroups: add a pids subsystem include/linux/cgroup.h | 13 +- include/linux/cgroup_subsys.h | 4 + init/Kconfig | 11 ++ kernel/Makefile | 1 + kernel/cgroup.c | 132 +++++++++++++++--- kernel/cgroup_pids.c | 301 ++++++++++++++++++++++++++++++++++++++++++ kernel/fork.c | 18 ++- 7 files changed, 459 insertions(+), 21 deletions(-) create mode 100644 kernel/cgroup_pids.c -- 2.3.2 -- To unsubscribe from this list: send the line "unsubscribe cgroups" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html