• T
    cgroup, memcg: implement css->id and convert css_from_id() to use it · 15a4c835
    Tejun Heo 提交于
    Until now, cgroup->id has been used to identify all the associated
    csses and css_from_id() takes cgroup ID and returns the matching css
    by looking up the cgroup and then dereferencing the css associated
    with it; however, now that the lifetimes of cgroup and css are
    separate, this is incorrect and breaks on the unified hierarchy when a
    controller is disabled and enabled back again before the previous
    instance is released.
    
    This patch adds css->id which is a subsystem-unique ID and converts
    css_from_id() to look up by the new css->id instead.  memcg is the
    only user of css_from_id() and also converted to use css->id instead.
    
    For traditional hierarchies, this shouldn't make any functional
    difference.
    Signed-off-by: NTejun Heo <tj@kernel.org>
    Acked-by: NMichal Hocko <mhocko@suse.cz>
    Cc: Johannes Weiner <hannes@cmpxchg.org>
    Cc: Jianyu Zhan <nasa4836@gmail.com>
    Acked-by: NLi Zefan <lizefan@huawei.com>
    15a4c835
cgroup.c 144.6 KB