diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-01-09 15:59:24 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-01-09 15:59:24 -0500 |
commit | db0c2bf69aa095d4a6de7b1145f29fe9a7c0f6a3 (patch) | |
tree | 8f38957c01b18edddd44d49ecc3beeac08a20b4e /kernel/fork.c | |
parent | ac69e0928054ff29a5049902fb477f9c7605c773 (diff) | |
parent | 0d19ea866562e46989412a0676412fa0983c9ce7 (diff) |
Merge branch 'for-3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup
* 'for-3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: (21 commits)
cgroup: fix to allow mounting a hierarchy by name
cgroup: move assignement out of condition in cgroup_attach_proc()
cgroup: Remove task_lock() from cgroup_post_fork()
cgroup: add sparse annotation to cgroup_iter_start() and cgroup_iter_end()
cgroup: mark cgroup_rmdir_waitq and cgroup_attach_proc() as static
cgroup: only need to check oldcgrp==newgrp once
cgroup: remove redundant get/put of task struct
cgroup: remove redundant get/put of old css_set from migrate
cgroup: Remove unnecessary task_lock before fetching css_set on migration
cgroup: Drop task_lock(parent) on cgroup_fork()
cgroups: remove redundant get/put of css_set from css_set_check_fetched()
resource cgroups: remove bogus cast
cgroup: kill subsys->can_attach_task(), pre_attach() and attach_task()
cgroup, cpuset: don't use ss->pre_attach()
cgroup: don't use subsys->can_attach_task() or ->attach_task()
cgroup: introduce cgroup_taskset and use it in subsys->can_attach(), cancel_attach() and attach()
cgroup: improve old cgroup handling in cgroup_attach_proc()
cgroup: always lock threadgroup during migration
threadgroup: extend threadgroup_lock() to cover exit and exec
threadgroup: rename signal->threadgroup_fork_lock to ->group_rwsem
...
Fix up conflict in kernel/cgroup.c due to commit e0197aae59e5: "cgroups:
fix a css_set not found bug in cgroup_attach_proc" that already
mentioned that the bug is fixed (differently) in Tejun's cgroup
patchset. This one, in other words.
Diffstat (limited to 'kernel/fork.c')
-rw-r--r-- | kernel/fork.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/kernel/fork.c b/kernel/fork.c index f34f894c4b98..b00711ce7c13 100644 --- a/kernel/fork.c +++ b/kernel/fork.c | |||
@@ -972,7 +972,7 @@ static int copy_signal(unsigned long clone_flags, struct task_struct *tsk) | |||
972 | sched_autogroup_fork(sig); | 972 | sched_autogroup_fork(sig); |
973 | 973 | ||
974 | #ifdef CONFIG_CGROUPS | 974 | #ifdef CONFIG_CGROUPS |
975 | init_rwsem(&sig->threadgroup_fork_lock); | 975 | init_rwsem(&sig->group_rwsem); |
976 | #endif | 976 | #endif |
977 | 977 | ||
978 | sig->oom_adj = current->signal->oom_adj; | 978 | sig->oom_adj = current->signal->oom_adj; |
@@ -1153,7 +1153,7 @@ static struct task_struct *copy_process(unsigned long clone_flags, | |||
1153 | p->io_context = NULL; | 1153 | p->io_context = NULL; |
1154 | p->audit_context = NULL; | 1154 | p->audit_context = NULL; |
1155 | if (clone_flags & CLONE_THREAD) | 1155 | if (clone_flags & CLONE_THREAD) |
1156 | threadgroup_fork_read_lock(current); | 1156 | threadgroup_change_begin(current); |
1157 | cgroup_fork(p); | 1157 | cgroup_fork(p); |
1158 | #ifdef CONFIG_NUMA | 1158 | #ifdef CONFIG_NUMA |
1159 | p->mempolicy = mpol_dup(p->mempolicy); | 1159 | p->mempolicy = mpol_dup(p->mempolicy); |
@@ -1368,7 +1368,7 @@ static struct task_struct *copy_process(unsigned long clone_flags, | |||
1368 | proc_fork_connector(p); | 1368 | proc_fork_connector(p); |
1369 | cgroup_post_fork(p); | 1369 | cgroup_post_fork(p); |
1370 | if (clone_flags & CLONE_THREAD) | 1370 | if (clone_flags & CLONE_THREAD) |
1371 | threadgroup_fork_read_unlock(current); | 1371 | threadgroup_change_end(current); |
1372 | perf_event_fork(p); | 1372 | perf_event_fork(p); |
1373 | return p; | 1373 | return p; |
1374 | 1374 | ||
@@ -1403,7 +1403,7 @@ bad_fork_cleanup_policy: | |||
1403 | bad_fork_cleanup_cgroup: | 1403 | bad_fork_cleanup_cgroup: |
1404 | #endif | 1404 | #endif |
1405 | if (clone_flags & CLONE_THREAD) | 1405 | if (clone_flags & CLONE_THREAD) |
1406 | threadgroup_fork_read_unlock(current); | 1406 | threadgroup_change_end(current); |
1407 | cgroup_exit(p, cgroup_callbacks_done); | 1407 | cgroup_exit(p, cgroup_callbacks_done); |
1408 | delayacct_tsk_free(p); | 1408 | delayacct_tsk_free(p); |
1409 | module_put(task_thread_info(p)->exec_domain->module); | 1409 | module_put(task_thread_info(p)->exec_domain->module); |