cgroup: update cgroup_transfer_tasks() to either succeed or fail
authorTejun Heo <tj@kernel.org>
Tue, 25 Feb 2014 15:04:03 +0000 (10:04 -0500)
committerTejun Heo <tj@kernel.org>
Tue, 25 Feb 2014 15:04:03 +0000 (10:04 -0500)
commit952aaa125428fae883670a2c2e40ea8044ca1eaa
tree54c4f846256d192f094dd6004012989b6d9f414c
parent0e1d768f1b1873272ec4e8dc1482bb5281855017
cgroup: update cgroup_transfer_tasks() to either succeed or fail

cgroup_transfer_tasks() can currently fail in the middle due to memory
allocation failure.  When that happens, the function just aborts and
returns error code and there's no way to tell how many actually got
migrated at the point of failure and or to revert the partial
migration.

Update it to use cgroup_migrate{_add_src|prepare_dst|migrate|finish}()
so that the function either succeeds or fails as a whole as long as
->can_attach() doesn't fail.

Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Li Zefan <lizefan@huawei.com>
kernel/cgroup.c
This page took 0.025627 seconds and 5 git commands to generate.