cgroups: Add an API to attach a task to current task's cgroup

Add a new kernel API to attach a task to current task's cgroup
in all the active hierarchies.

Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Paul Menage <menage@google.com>
Acked-by: Li Zefan <lizf@cn.fujitsu.com>
This commit is contained in:
Sridhar Samudrala
2010-05-30 22:24:39 +02:00
committed by Michael S. Tsirkin
parent c23f3445e6
commit d7926ee38f
2 changed files with 30 additions and 0 deletions

View File

@@ -1788,6 +1788,29 @@ out:
return retval;
}
/**
* cgroup_attach_task_current_cg - attach task 'tsk' to current task's cgroup
* @tsk: the task to be attached
*/
int cgroup_attach_task_current_cg(struct task_struct *tsk)
{
struct cgroupfs_root *root;
struct cgroup *cur_cg;
int retval = 0;
cgroup_lock();
for_each_active_root(root) {
cur_cg = task_cgroup_from_root(current, root);
retval = cgroup_attach_task(cur_cg, tsk);
if (retval)
break;
}
cgroup_unlock();
return retval;
}
EXPORT_SYMBOL_GPL(cgroup_attach_task_current_cg);
/*
* Attach task with pid 'pid' to cgroup 'cgrp'. Call with cgroup_mutex
* held. May take task_lock of task