X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=gentoo%2Futil-vserver;h=38a502d43ddc418364d1b7d419cc025a3c578831;hb=b1dbdec10c0cadc46a58889d738c8ab1c92a07e9;hp=c7ff3595f81a131317b0d2094bd9224d526d99f9;hpb=94d6379ba442eac176300d37a194c4e9a65c0e1e;p=util-vserver.git diff --git a/gentoo/util-vserver b/gentoo/util-vserver index c7ff359..38a502d 100644 --- a/gentoo/util-vserver +++ b/gentoo/util-vserver @@ -2,31 +2,6 @@ # Copyright 1999-2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -set_helper() { - local f="/proc/sys/kernel/vshelper" - if [ -e "$f" ]; then - echo "$_VSHELPER" > "$f" - fi - return 0 -} - -kill_contexts() { - local xid - for xid in `ls -1 /proc/virtual`; do - [ "$xid" = "info" -o "$xid" = "status" ] && continue - $_VATTRIBUTE --xid $xid --set --flag ~persistent - $_VKILL --xid $xid -s 15 - sleep 3 - $_VKILL --xid $xid -s 9 - done - local alive=0 - for xid in `ls -1 /proc/virtual`; do - [ "$xid" = "info" -o "$xid" = "status" ] && continue - let alive+=1 - done - return $alive -} - start() { : ${UTIL_VSERVER_VARS:=/usr/lib/util-vserver/util-vserver-vars} if [ ! -e ${UTIL_VSERVER_VARS} ]; then @@ -37,13 +12,24 @@ start() { . ${UTIL_VSERVER_VARS} + ebegin "Creating directories for $PACKAGE_NAME" + $__PKGLIBDIR/bash-wrapper 'create_dirs' + eend $? + ebegin "Setting vshelper path to $_VSHELPER" - set_helper + $__PKGLIBDIR/bash-wrapper 'create_dirs' eend $? ebegin "Loading default device map" - $__PKGLIBDIR/bash-wrapper 'loadDeviceMap 0 "$__CONFDIR/.defaults/apps/vdevmap"' + $__PKGLIBDIR/bash-wrapper 'handleDeviceMap --set 0 "$__CONFDIR/.defaults/apps/vdevmap"' eend $? + + $__PKGLIBDIR/bash-wrapper 'hasCgroup' + if [ $? -eq 0 ]; then + ebegin "Mounting cgroup-hierarchy" + $__PKGLIBDIR/bash-wrapper 'mount_cgroup' + eend $? + fi } stop() { @@ -61,8 +47,15 @@ stop() { eend $? ebegin "Killing all running contexts" - kill_contexts + $__PKGLIBDIR/bash-wrapper 'kill_contexts' eend $? + + $__PKGLIBDIR/bash-wrapper 'hasCgroup' + if [ $? -eq 0 ]; then + ebegin "Unmounting cgroup-hierarchy" + $__PKGLIBDIR/bash-wrapper 'umount_cgroup' + eend $? + fi } # vim:ts=4:filetype=gentoo-init-d