• Tejun Heo's avatar
    cgroup: make hierarchy iterators deal with cgroup_subsys_state instead of cgroup · 492eb21b
    Tejun Heo authored
    
    
    cgroup is currently in the process of transitioning to using css
    (cgroup_subsys_state) as the primary handle instead of cgroup in
    subsystem API.  For hierarchy iterators, this is beneficial because
    
    * In most cases, css is the only thing subsystems care about anyway.
    
    * On the planned unified hierarchy, iterations for different
      subsystems will need to skip over different subtrees of the
      hierarchy depending on which subsystems are enabled on each cgroup.
      Passing around css makes it unnecessary to explicitly specify the
      subsystem in question as css is intersection between cgroup and
      subsystem
    
    * For the planned unified hierarchy, css's would need to be created
      and destroyed dynamically independent from cgroup hierarchy.  Having
      cgroup core manage css iteration makes enforcing deref rules a lot
      easier.
    
    Most subsystem conversions are straight-forward.  Noteworthy changes
    are
    
    * blkio: cgroup_to_blkcg() is no longer used.  Removed.
    
    * freezer: cgroup_freezer() is no longer used.  Removed.
    
    * devices: cgroup_to_devcgroup() is no longer used.  Removed.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Acked-by: default avatarLi Zefan <lizefan@huawei.com>
    Acked-by: default avatarMichal Hocko <mhocko@suse.cz>
    Acked-by: default avatarVivek Goyal <vgoyal@redhat.com>
    Acked-by: default avatarAristeu Rozanski <aris@redhat.com>
    Cc: Johannes Weiner <hannes@cmpxchg.org>
    Cc: Balbir Singh <bsingharora@gmail.com>
    Cc: Matt Helsley <matthltc@us.ibm.com>
    Cc: Jens Axboe <axboe@kernel.dk>
    492eb21b