• Tejun Heo's avatar
    cgroup: drop unnecessary RCU dancing from __put_css_set() · ddd69148
    Tejun Heo authored
    __put_css_set() does RCU read access on @cgrp across dropping
    @cgrp->count so that it can continue accessing @cgrp even if the count
    reached zero and destruction of the cgroup commenced.  Given that both
    sides - __css_put() and cgroup_destroy_locked() - are cold paths, this
    is unnecessary.  Just making cgroup_destroy_locked() grab css_set_lock
    while checking @cgrp->count is enough.
    
    Remove the RCU read locking from __put_css_set() and make
    cgroup_destroy_locked() read-lock css_set_lock when checking
    @cgrp->count.  This will also allow removing @cgrp->count.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Acked-by: default avatarLi Zefan <lizefan@huawei.com>
    ddd69148
cgroup.c 147 KB