Re: [PATCHSET for-4.13] cgroup: implement cgroup2 thread mode, v2

From: Waiman Long
Date: Wed Jul 12 2017 - 10:00:46 EST


On 07/12/2017 03:45 AM, Peter Zijlstra wrote:
> On Tue, Jul 11, 2017 at 05:12:39PM -0400, Waiman Long wrote:
>> On 07/11/2017 12:52 PM, Peter Zijlstra wrote:
>>> On Tue, Jul 11, 2017 at 10:14:42AM -0400, Waiman Long wrote:
>>>
>>>> The "join" was a special op for the children of cgroup root to join the
>>>> root as part of a threaded subtree. The children can instead use the
>>>> "enable" option to become a thread root which was the configuration
>>>> shown above. This behavior applied only to children of root. Down the
>>>> hierarchy, you can't have configuration like:
>>>>
>>>> R (t=0)
>>>> / \
>>>> D (t=1)
>>>> / \
>>>> T D (t=1)
>>> Why not?
>>>
>>> First you create:
>>>
>>> R (t=0)
>>> / \
>>> D (t=1)
>>> / \
>>> T T (t=1)
>>>
>>> Then you flip t=0 like:
>>>
>>> R (t=0)
>>> / \
>>> D (t=1)
>>> / \
>>> T D (t=0)
>>>
>>> And then you flip t=1 again:
>>>
>>> R (t=0)
>>> / \
>>> D (t=1)
>>> / \
>>> T D (t=1)
>> Tejun's thread mode patch has constraints on what operations are allowed
>> and what aren't. For a threaded subtree, thread mode cannot be disabled
>> in the middle of the tree.
> Where in that scenario did I change anything in the middle? All
> operations were on a leaf group.

What I mean is that you can't disable thread mode if not at the thread
root with no children left.

Cheers,
Longman