linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/10] cgroups: Task counter subsystem v6
@ 2011-10-03 19:07 Frederic Weisbecker
  2011-10-03 19:07 ` [PATCH 01/10] cgroups: Add res_counter_write_u64() API Frederic Weisbecker
                   ` (12 more replies)
  0 siblings, 13 replies; 44+ messages in thread
From: Frederic Weisbecker @ 2011-10-03 19:07 UTC (permalink / raw)
  To: Andrew Morton
  Cc: LKML, Frederic Weisbecker, Paul Menage, Li Zefan, Johannes Weiner,
	Aditya Kali, Oleg Nesterov, Kay Sievers, Tim Hockin, Tejun Heo,
	Kirill A. Shutemov, Containers

Hi Andrew,

This contains minor changes, mostly documentation and changelog
updates, off-case build fix, and a code optimization in
res_counter_common_ancestor().

It's hard to put some statistic numbers while testing this feature
given that the result is rather binary: we launch a forkbomb and
either we stop and kill it or the system become unresponsive.
    
Meanwhile, one can find a testsuite at this address:
https://tglx.de/~fweisbec/task_counter_test.tar.gz
    
It performs several checks to ensure the interface and the behaviour
are reliable after common events like moving tasks around over cgroups
in a hierarchy, forking inside, etc.. It also launches a forkbomb,
tries to stop and kill it. So beware, don't run it on a system that
is doing serious things. Ensure you have CGROUP_TASK_COUNTER set
before, or it may compress the Ten Plagues in your MBR and
inflate the whole after your next reboot.

Changes in v6:

- Update res_counter_common_ancestor() to be O(n+m) instead of O(n*m),
patch from Kirill A. Shutemov (6/10)
- Refine documentation and changelog to better explain the claims and
goals of this subsystem (10/10)
- Fix !CONFIG_CGROUPS build crash (10/10)
- Step over the temporary state that used an ad-hoc fork hook.

Frederic Weisbecker (9):
  cgroups: Add res_counter_write_u64() API
  cgroups: New resource counter inheritance API
  cgroups: Add previous cgroup in can_attach_task/attach_task callbacks
  cgroups: New cancel_attach_task subsystem callback
  cgroups: Ability to stop res charge propagation on bounded ancestor
  res_counter: Allow charge failure pointer to be null
  cgroups: Pull up res counter charge failure interpretation to caller
  cgroups: Allow subsystems to cancel a fork
  cgroups: Add a task counter subsystem

Kirill A. Shutemov (1):
  cgroups: Add res counter common ancestor searching

 Documentation/cgroups/cgroups.txt          |   13 ++-
 Documentation/cgroups/resource_counter.txt |   20 +++-
 Documentation/cgroups/task_counter.txt     |  153 ++++++++++++++++++
 block/blk-cgroup.c                         |   12 +-
 include/linux/cgroup.h                     |   28 +++-
 include/linux/cgroup_subsys.h              |    8 +
 include/linux/res_counter.h                |   27 +++-
 init/Kconfig                               |    9 +
 kernel/Makefile                            |    1 +
 kernel/cgroup.c                            |   58 ++++++--
 kernel/cgroup_freezer.c                    |    9 +-
 kernel/cgroup_task_counter.c               |  239 ++++++++++++++++++++++++++++
 kernel/cpuset.c                            |    6 +-
 kernel/events/core.c                       |    5 +-
 kernel/exit.c                              |    2 +-
 kernel/fork.c                              |    7 +-
 kernel/res_counter.c                       |   97 ++++++++++--
 kernel/sched.c                             |    6 +-
 18 files changed, 644 insertions(+), 56 deletions(-)
 create mode 100644 Documentation/cgroups/task_counter.txt
 create mode 100644 kernel/cgroup_task_counter.c

-- 
1.7.5.4


^ permalink raw reply	[flat|nested] 44+ messages in thread

end of thread, other threads:[~2011-12-14 15:08 UTC | newest]

Thread overview: 44+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-10-03 19:07 [PATCH 00/10] cgroups: Task counter subsystem v6 Frederic Weisbecker
2011-10-03 19:07 ` [PATCH 01/10] cgroups: Add res_counter_write_u64() API Frederic Weisbecker
2011-10-04  0:17   ` Kirill A. Shutemov
2011-10-11 13:44     ` Frederic Weisbecker
2011-10-03 19:07 ` [PATCH 02/10] cgroups: New resource counter inheritance API Frederic Weisbecker
2011-10-04  0:20   ` Kirill A. Shutemov
2011-10-03 19:07 ` [PATCH 03/10] cgroups: Add previous cgroup in can_attach_task/attach_task callbacks Frederic Weisbecker
2011-10-04  0:22   ` Kirill A. Shutemov
2011-10-03 19:07 ` [PATCH 04/10] cgroups: New cancel_attach_task subsystem callback Frederic Weisbecker
2011-10-04  0:27   ` Kirill A. Shutemov
2011-10-03 19:07 ` [PATCH 05/10] cgroups: Ability to stop res charge propagation on bounded ancestor Frederic Weisbecker
2011-10-04  0:41   ` Kirill A. Shutemov
2011-10-03 19:07 ` [PATCH 06/10] cgroups: Add res counter common ancestor searching Frederic Weisbecker
2011-10-03 19:07 ` [PATCH 07/10] res_counter: Allow charge failure pointer to be null Frederic Weisbecker
2011-10-04  1:30   ` Kirill A. Shutemov
2011-10-03 19:07 ` [PATCH 08/10] cgroups: Pull up res counter charge failure interpretation to caller Frederic Weisbecker
2011-10-04  1:32   ` Kirill A. Shutemov
2011-10-03 19:07 ` [PATCH 09/10] cgroups: Allow subsystems to cancel a fork Frederic Weisbecker
2011-10-04  1:38   ` Kirill A. Shutemov
2011-10-03 19:07 ` [PATCH 10/10] cgroups: Add a task counter subsystem Frederic Weisbecker
2011-10-06  9:23   ` Kirill A. Shutemov
2011-10-11 13:41     ` Frederic Weisbecker
2011-10-04 22:01 ` [PATCH 00/10] cgroups: Task counter subsystem v6 Andrew Morton
2011-10-11 13:40   ` Frederic Weisbecker
2011-10-25 20:06   ` Tim Hockin
2011-10-28 23:30     ` Andrew Morton
2011-10-29  9:38       ` Glauber Costa
2011-11-03 16:49         ` Frederic Weisbecker
2011-11-03 16:58           ` Glauber Costa
2011-11-03 17:02             ` Paul Menage
2011-11-03 17:06               ` Glauber Costa
2011-11-03 17:28                 ` Paul Menage
2011-11-03 17:35                   ` Glauber Costa
2011-11-03 17:56                     ` Paul Menage
2011-11-04 13:17                       ` Glauber Costa
2011-11-03 17:00       ` Frederic Weisbecker
2011-11-04  2:57         ` Li Zefan
2011-11-04 12:37           ` Frederic Weisbecker
2011-10-06  6:51 ` Li Zefan
2011-10-11 13:41   ` Frederic Weisbecker
2011-12-13 15:58 ` Tejun Heo
2011-12-13 19:06   ` Frederic Weisbecker
2011-12-13 20:49     ` Tejun Heo
2011-12-14 15:07       ` Frederic Weisbecker

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).