Changes

1,130 bytes added ,  20:57, 29 July 2015
no edit summary
Line 32: Line 32:     
The option syntax is <code>--cgroup-root [<controller>:]/<path></code> and it only makes sense on restore. Without this option CRIU would restore tasks and groups that live in the subtrees starting from the root task's dirs. When this option is given, the respective controllers' will get restoring starting from the give path instead.
 
The option syntax is <code>--cgroup-root [<controller>:]/<path></code> and it only makes sense on restore. Without this option CRIU would restore tasks and groups that live in the subtrees starting from the root task's dirs. When this option is given, the respective controllers' will get restoring starting from the give path instead.
 +
 +
== CGroups restoring strategy ==
 +
 +
When restoring cgroups CRIU may meet already existing cgroup controllers and as result it relies on user choice how to behave in such case: should it overwrite existing properties with values from the image or should ignore them? Or maybe it is unacceptable to modify any existing cgroup?
 +
 +
To break a tie CRIU supports that named restore modes, which should be specified as an addition to <code>--manage-cgroups</code> option. Mode may be one of the following:
 +
 +
# <code>none</code>. Do not restore cgroup properties but require cgroup to pre-exist at the moment of restore procedure.
 +
# <code>props</code>. Restore cgroup properties and require cgroup to pre-exist.
 +
# <code>soft</code>. Restore cgroup properties if only cgroup has been created by *criu*, otherwise do not restore properies.
 +
# <code>full</code>. Always restore all cgroups and their properties.
 +
# <code>strict</code>. Restore all cgroups and their properties from the scratch, requiring them to not present in the system.
 +
 +
By default <code>soft</code> is assigned if <code>--manage-cgroups</code> option passed without argument.
    
[[Category:Under the hood]]
 
[[Category:Under the hood]]