Re: [PATCH 0/8 v3] cgroups: Task counter subsystem (was: New max number of tasks subsystem)

Andrew Morton
2011-08-01T23:19:12Z

On Fri, 29 Jul 2011 18:13:22 +0200
Frederic Weisbecker <fweisbec@gmail.com> wrote:

> Reminder:
>
> This patchset is aimed at reducing the impact of a forkbomb to a
> cgroup boundaries, thus minimizing the consequences of such an attack
> against the rest of the system.
>
> This can be useful when cgroups are used to stage some processes or run
> untrustees.

Really? How useful? Why is it useful enough to justify adding code
such as this to the kernel?

Is forkbomb-prevention the only use? Others have proposed different
ways of preventing forkbombs which were independent of cgroups - is
this way better and if so, why?

> block/blk-cgroup.c | 10 ++-
> include/linux/cgroup.h | 15 +++-
> include/linux/cgroup_subsys.h | 8 ++
> include/linux/res_counter.h | 12 +++
> init/Kconfig | 7 ++
> kernel/Makefile | 1 +
> kernel/cgroup.c | 25 ++++--
> kernel/cgroup_freezer.c | 3 +-
> kernel/cgroup_task_counter.c | 176 +++++++++++++++++++++++++++++++++++++++++
> kernel/cpuset.c | 6 +-
> kernel/events/core.c | 5 +-
> kernel/fork.c | 4 +
> kernel/res_counter.c | 81 ++++++++++++++++---
> kernel/sched.c | 6 +-

The patch forgot to document the feature: how it works, what it's
useful for, what behaviour users can expect to see, when they should
consider using it, what the userspace control interface is and how to
configure it, etc. Documentation/cgroups/ is the place for that.