[CRIU] [PATCH 1/2] Re-create cgroups if necessary

Pavel Emelyanov xemul at parallels.com
Mon Jun 23 23:53:26 PDT 2014


On 06/23/2014 07:54 PM, Tycho Andersen wrote:
> If a task had cgroups, these should be restored. (Also any properties of
> cgroups, but this commit doesn't do that yet.)
> 
> Signed-off-by: Tycho Andersen <tycho.andersen at canonical.com>
> ---
>  cgroup.c       |  6 +++++-
>  include/util.h |  5 +++++
>  util.c         | 26 ++++++++++++++++++++++++++
>  3 files changed, 36 insertions(+), 1 deletion(-)
> 
> diff --git a/cgroup.c b/cgroup.c
> index 2d9ebad..8b2deb2 100644
> --- a/cgroup.c
> +++ b/cgroup.c
> @@ -258,9 +258,13 @@ static int move_in_cgroup(CgSetEntry *se)
>  		int fd, err;
>  		ControllerEntry *ce = se->ctls[i];
>  
> +		sprintf(aux, "%s/%s", ce->name, ce->path);
> +		if (mkdirpat(cg, aux) < 0)
> +			return -1;
> +
>  		sprintf(aux, "%s/%s/tasks", ce->name, ce->path);
>  		pr_debug("  `-> %s\n", aux);
> -		err = fd = openat(cg, aux, O_WRONLY);
> +		err = fd = openat(cg, aux, O_WRONLY | O_CREAT, 0700);

Why O_CREAT here? The cgroup files should just exist.

Thanks,
Pavel



More information about the CRIU mailing list