This is a further updated version of the nproc v2 patchset[1] from advice given by Tejun Heo[2]. The main changes include: * Switching from mm/page_counter (which is a memcg implementation feature) to a pid-controller-specific hierarchical charge/uncharge counter with limits implementation using atomic_long_t (which is also lockless as it is based on page_counter). * Updates to the user-space interface to allow for the setting of no limit to the number of pids in a cgroup (-1 == unlimited) as well as renaming of the files and the removal of nproc.max_limit. * The controller was renamed to `pids`. [1]: https://lkml.org/lkml/2015/2/26/787 [2]: https://lkml.org/lkml/2015/3/2/437 Aleksa Sarai (2): cgroups: allow a cgroup subsystem to reject a fork cgroups: add a pids subsystem include/linux/cgroup.h | 9 ++ include/linux/cgroup_subsys.h | 4 + init/Kconfig | 12 ++ kernel/Makefile | 1 + kernel/cgroup.c | 80 +++++++++--- kernel/cgroup_pids.c | 281 ++++++++++++++++++++++++++++++++++++++++++ kernel/fork.c | 12 +- 7 files changed, 381 insertions(+), 18 deletions(-) create mode 100644 kernel/cgroup_pids.c -- 2.3.1 -- 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