• Paul Menage's avatar
    cgroups: allow cgroup hierarchies to be created with no bound subsystems · 2c6ab6d2
    Paul Menage authored
    This patch removes the restriction that a cgroup hierarchy must have at
    least one bound subsystem.  The mount option "none" is treated as an
    explicit request for no bound subsystems.
    
    A hierarchy with no subsystems can be useful for plain task tracking, and
    is also a step towards the support for multiply-bindable subsystems.
    
    As part of this change, the hierarchy id is no longer calculated from the
    bitmask of subsystems in the hierarchy (since this is not guaranteed to be
    unique) but is allocated via an ida.  Reference counts on cgroups from
    css_set objects are now taken explicitly one per hierarchy, rather than
    one per subsystem.
    
    Example usage:
    
    mount -t cgroup -o none,name=foo cgroup /mnt/cgroup
    
    Based on the "no-op"/"none" subsystem concept proposed by
    kamezawa.hiroyu@jp.fujitsu.com
    Signed-off-by: default avatarPaul Menage <menage@google.com>
    Reviewed-by: default avatarLi Zefan <lizf@cn.fujitsu.com>
    Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
    Cc: Balbir Singh <balbir@in.ibm.com>
    Cc: Dhaval Giani <dhaval@linux.vnet.ibm.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    2c6ab6d2
cgroup.c 104 KB