On 2012/7/8 14:35, Tejun Heo wrote: > Hello, Li. > > On Wed, Jul 04, 2012 at 02:19:15PM +0800, Li Zefan wrote: >>> I think we're horridly broken for >>> root cgroup tho - and it has been broken for very long time. I think >>> it's mostly hidden because most (all?) controllers short-circuit root >>> cgroup. Eh, well.... >>> >> >> Could you elaborate a bit on what's broken for root cgroup? > > If someone holds css ref of a root cgroup, AFAICS nothing is > preventing the cgroup hierarchy from being unmounted and root cgroup > destroyed. > Right, but that should be safe. The css objects of the root cgroup are allocated at boot, and won't be destroyed at umount. Furthermore when a cgroup hierarchy is going to be unmounted, those css's will be made to point to a cgroup named dummytop in rebind_subsystems(), and there's a syncronize_rcu() in the end of the function, so accessing css->cgroup is always safe. In this case, dummytop->dentry is NULL, and that's safe too, because cgroup_path() is aware of this case. -- 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