Quoting Matt Helsley ([email protected]):
> -int cgroup_frozen(struct task_struct *task)
> +int cgroup_freezing_or_frozen(struct task_struct *task)
>  {
>       struct freezer *freezer;
>       enum freezer_state state;
> 
>       task_lock(task);
>       freezer = task_freezer(task);
> -     state = freezer->state;
> +     if (!freezer->css.cgroup->parent)
> +             state = CGROUP_THAWED; /* root cgroup can't be frozen */
> +     else
> +             state = freezer->state;

Why do you have to add this special-casing now?  I thought
we were already preventing freezing the root cgroup, so
freezer->state should be sane in that case anyway?

>       task_unlock(task);
> 
> -     return state == CGROUP_FROZEN;
> +     return (state == CGROUP_FREEZING) || (state == CGROUP_FROZEN);
>  }

-serge
_______________________________________________
Containers mailing list
[email protected]
https://lists.linux-foundation.org/mailman/listinfo/containers

_______________________________________________
Devel mailing list
[email protected]
https://openvz.org/mailman/listinfo/devel

Reply via email to