• Tejun Heo's avatar
    cgroup_freezer: add ->post_create() and ->pre_destroy() and track online state · 5300a9b3
    Tejun Heo authored
    A cgroup is online and visible to iteration between ->post_create()
    and ->pre_destroy().  This patch introduces CGROUP_FREEZER_ONLINE and
    toggles it from the newly added freezer_post_create() and
    freezer_pre_destroy() while holding freezer->lock such that a
    cgroup_freezer can be reilably distinguished to be online.  This will
    be used by full hierarchy support.
    
    ONLINE test is added to freezer_apply_state() but it currently doesn't
    make any difference as freezer_write() can only be called for an
    online cgroup.
    
    Adjusting system_freezing_cnt on destruction is moved from
    freezer_destroy() to the new freezer_pre_destroy() for consistency.
    
    This patch doesn't introduce any noticeable behavior change.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Reviewed-by: default avatarKAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
    Reviewed-by: default avatarMichal Hocko <mhocko@suse.cz>
    5300a9b3
cgroup_freezer.c 10.2 KB