• T
    cgroup: improve css_from_dir() into css_tryget_from_dir() · 5a17f543
    Tejun Heo 提交于
    css_from_dir() returns the matching css (cgroup_subsys_state) given a
    dentry and subsystem.  The function doesn't pin the css before
    returning and requires the caller to be holding RCU read lock or
    cgroup_mutex and handling pinning on the caller side.
    
    Given that users of the function are likely to want to pin the
    returned css (both existing users do) and that getting and putting
    css's are very cheap, there's no reason for the interface to be tricky
    like this.
    
    Rename css_from_dir() to css_tryget_from_dir() and make it try to pin
    the found css and return it only if pinning succeeded.  The callers
    are updated so that they no longer do RCU locking and pinning around
    the function and just use the returned css.
    
    This will also ease converting cgroup to kernfs.
    Signed-off-by: NTejun Heo <tj@kernel.org>
    Acked-by: NMichal Hocko <mhocko@suse.cz>
    Acked-by: NLi Zefan <lizefan@huawei.com>
    Cc: Steven Rostedt <rostedt@goodmis.org>
    Cc: Frederic Weisbecker <fweisbec@gmail.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Johannes Weiner <hannes@cmpxchg.org>
    Cc: Balbir Singh <bsingharora@gmail.com>
    Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
    5a17f543
cgroup.h 25.8 KB