[Devel] [PATCH v10 9/9] ve/cgroup: set release_agent_path for root cgroups separately for each ve.
Pavel Tikhomirov
ptikhomirov at virtuozzo.com
Fri Apr 17 11:25:02 MSK 2020
> diff --git a/kernel/cgroup.c b/kernel/cgroup.c
> index fa1a881..9b7c8f3 100644
> --- a/kernel/cgroup.c
> +++ b/kernel/cgroup.c
> @@ -1094,10 +1094,21 @@ static int rebind_subsystems(struct cgroupfs_root *root,
>
> static int cgroup_show_options(struct seq_file *seq, struct dentry *dentry)
> {
> + const char *release_agent;
> struct cgroupfs_root *root = dentry->d_sb->s_fs_info;
> struct cgroup_subsys *ss;
> + struct cgroup *root_cgrp = &root->top_cgroup;
>
> +#ifdef CONFIG_VE
> + struct ve_struct *ve = get_exec_env();
> + if (!ve_is_super(ve)) {
> + mutex_lock(&cgroup_mutex);
> + root_cgrp = task_cgroup_from_root(ve->init_task, root);
And here css_cgroup_from_root will also fit.
> + mutex_unlock(&cgroup_mutex);
> + }
> +#endif
> mutex_lock(&cgroup_root_mutex);
> +
> for_each_subsys(root, ss)
> seq_printf(seq, ",%s", ss->name);
> if (root->flags & CGRP_ROOT_SANE_BEHAVIOR)
More information about the Devel
mailing list