| From: |
| Ben Blum <bblum@andrew.cmu.edu> |
| To: |
| linux-kernel@vger.kernel.org, containers@lists.linux-foundation.org |
| Subject: |
| [RFC] [PATCH v2 0/2] cgroups: implement moving a threadgroup's
threads atomically with cgroup.procs |
| Date: |
| Sat, 29 May 2010 21:30:02 -0400 |
| Message-ID: |
| <20100530013002.GA762@ghc01.ghc.andrew.cmu.edu> |
| Cc: |
| akpm@linux-foundation.org, bblum@andrew.cmu.edu,
ebiederm@xmission.com, lizf@cn.fujitsu.com, matthltc@us.ibm.com,
menage@google.com, oleg@redhat.com |
| Archive-link: |
| Article, Thread
|
This patch series is a revision of http://lkml.org/lkml/2010/1/3/51 and
http://lkml.org/lkml/2010/1/3/52 .
The rwsem in the fork path has been moved to signal_struct to simplify
the locking code in the cgroup_attach_proc side. This depends on Oleg's
recentish changes to signal_struct's lifetime rules (which don't seem to
appear when I check out mmotm with git clone, so I wasn't able to do any
more than basic testing).
There is still a race with exec in the case where the threadgroup leader
changes. To solve this, this implementation checks if the race occurred
after all previous set-up has been done and all necessary locks are
held, and if so, returns -EAGAIN which is handled by the calling
function by looping until a different value is returned.
-- bblum
---
Documentation/cgroups/cgroups.txt | 9
include/linux/cgroup.h | 15 -
include/linux/init_task.h | 9
include/linux/sched.h | 10
kernel/cgroup.c | 435 +++++++++++++++++++++++++++++++++-----
kernel/fork.c | 10
6 files changed, 431 insertions(+), 57 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/