X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=sysv%2Futil-vserver;h=8cc173f376bca1c9e35aa0841259979d80863310;hb=800a4d6d7c3d19bd5781ab1dba6e133f3e66438f;hp=0f5dd6c75c42d9b7f3124962a7838eca403bbe14;hpb=144b27fb9c6e9b7f06b988f05d69d3e0ad790ef9;p=util-vserver.git diff --git a/sysv/util-vserver b/sysv/util-vserver index 0f5dd6c..8cc173f 100755 --- a/sysv/util-vserver +++ b/sysv/util-vserver @@ -67,14 +67,31 @@ function mount_cgroup() _generateCgroupOptions test -n "$CGROUP_MNT" || return 0 $_MKDIR -p "$CGROUP_MNT" - $_MOUNT -t cgroup -o "$CGROUP_SUBSYS" vserver "$CGROUP_MNT" + if test -n "$CGROUP_MNT_PER_SS"; then + for ss in "${CGROUP_SUBSYS[@]}"; do + $_MKDIR -p "$CGROUP_MNT/$ss" + $_MOUNT -t cgroup -o "$ss" vserver "$CGROUP_MNT/$ss" + done + else + oIFS="$IFS" + IFS=, + ss="${CGROUP_SUBSYS[*]}" + IFS="$oIFS" + $_MOUNT -t cgroup -o "$ss" vserver "$CGROUP_MNT" + fi } function umount_cgroup() { _generateCgroupOptions test -n "$CGROUP_MNT" || return 0 - $_UMOUNT "$CGROUP_MNT" + if test -n "$CGROUP_MNT_PER_SS"; then + for ss in "${CGROUP_SUBSYS[@]}"; do + $_UMOUNT "$CGROUP_MNT/$ss" + done + else + $_UMOUNT "$CGROUP_MNT" + fi } function start()