Hello, Peter. On Mon, Jul 17, 2017 at 04:14:09PM +0200, Peter Zijlstra wrote: > AFAICT this is not in fact what I suggested... :/ Heh, sorry about misattributing that. I was mostly referring to the overall idea of marking each cgroup domain or threaded rather than subtree. > My proposal did not have that invalid state. It would simply refuse to > change the type from thread to domain in the case where the parent is > not a domain. > > Also, my proposal maintained the normal property inheritance rules. A > child cgroup's creation 'type' would be that of its parent and not > always be 'domain'. But aren't both of the above get weird when the parent can host both domain and threaded children? R / A(D) If you create another child B under R, it's naturally gonna be a domain. Let's say you turn that to threaded. R / \ A(D) B(T) And now try to create another child C, should that be a domain or threaded? If we only inherit from the second level on, which is in itself already confusing, that still leads to invalid configs for non-root thread roots. I don't think whether we fail the transition or put the cgroup in an invalid state is all that material. The simpler the better. > Let me read more (and more careful) to see if there's other things. Sure thing. Thanks! -- tejun -- To unsubscribe from this list: send the line "unsubscribe cgroups" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html