SVN: rc-scripts/trunk/rc.d: init.d/cpusets rc.sysinit
baggins
baggins at pld-linux.org
Thu Feb 10 12:01:49 CET 2011
Author: baggins
Date: Thu Feb 10 12:01:48 2011
New Revision: 12128
Modified:
rc-scripts/trunk/rc.d/init.d/cpusets
rc-scripts/trunk/rc.d/rc.sysinit
Log:
- moved cpuset/cgroup mounting code into cpuset startup script
for seamless interoperability with libcgroup
Modified: rc-scripts/trunk/rc.d/init.d/cpusets
==============================================================================
--- rc-scripts/trunk/rc.d/init.d/cpusets (original)
+++ rc-scripts/trunk/rc.d/init.d/cpusets Thu Feb 10 12:01:48 2011
@@ -26,15 +26,31 @@
if grep -q "/dev/cgroup" /proc/mounts ; then
CGDIR="/dev/cgroup"
CSUBSYS="cpuset."
-else
+elif grep -q "/dev/cpuset" /proc/mounts ; then
CGDIR="/dev/cpuset"
CSUBSYS=""
fi
-if is_yes "${CPUSETS}" && [ -z "${CGDIR}" ]; then
- nls "ERROR: CGROUP/CPUSET support not enabled in kernel or /dev/cpuset or /dev/cgroup not mounted" >&2
- exit 1
-fi
+cpuset_mount() {
+ [ -n "${CGDIR}" ] && return
+
+ if grep -q cgroup /proc/filesystems 2>/dev/null ; then
+ if ! grep -q "^[^#].*cgroup" /etc/fstab 2>/dev/null ; then
+ # creating is more convenient than artificial conflict with older udev
+ mkdir -p /dev/cgroup
+ modprobe -s blk-cgroup 2>/dev/null
+ # mount w/o options enables all available cgroup subsystems
+ mount -n -t cgroup none /dev/cgroup
+ fi
+ elif grep -q cpuset /proc/filesystems 2>/dev/null ; then
+ if ! grep -q "^[^#].*cpuset" /etc/fstab 2>/dev/null ; then
+ mount -n -t cpuset none /dev/cpuset
+ fi
+ else
+ nls "ERROR: CGROUP/CPUSET support not enabled in kernel" >&2
+ return 1
+ fi
+}
cpuset_create() {
local CPUS MEMS CPU_EXCLUSIVE MEM_EXCLUSIVE NOTIFY_ON_RELEASE TASKS
@@ -137,6 +153,7 @@
# See how we were called.
case "$1" in
start)
+ cpuset_mount
start
;;
stop)
@@ -163,6 +180,7 @@
;;
restart)
stop
+ cpuset_mount
start
;;
*)
Modified: rc-scripts/trunk/rc.d/rc.sysinit
==============================================================================
--- rc-scripts/trunk/rc.d/rc.sysinit (original)
+++ rc-scripts/trunk/rc.d/rc.sysinit Thu Feb 10 12:01:48 2011
@@ -270,21 +270,6 @@
/sbin/blogd
fi
- # cgroup/cpuset support
- if grep -q cgroup /proc/filesystems 2>/dev/null ; then
- if ! grep -q "^[^#].*cgroup" /etc/fstab 2>/dev/null ; then
- # creating is more convenient than artificial conflict with older udev
- mkdir -p /dev/cgroup
- # mount w/o options enables all available cgroup subsystems
- modprobe -s blk-cgroup 2> /dev/null
- mount -n -t cgroup none /dev/cgroup
- fi
- elif grep -q cpuset /proc/filesystems 2>/dev/null ; then
- if ! grep -q "^[^#].*cpuset" /etc/fstab 2>/dev/null ; then
- mount -n -t cpuset none /dev/cpuset
- fi
- fi
-
# Configure Linux kernel (initial configuration, some required modules still
# may be missing).
sysctl -e -p /etc/sysctl.conf > /dev/null 2>&1
@@ -484,12 +469,6 @@
mount -f -t selinuxfs selinuxfs /selinux
fi
- if is_fsmounted cgroup /dev/cgroup; then
- mount -f -t cgroup none /dev/cgroup
- elif is_fsmounted cpuset /dev/cpuset; then
- mount -f -t cpuset none /dev/cpuset
- fi
-
emit --no-wait root-filesystem
emit --no-wait virtual-filesystems
More information about the pld-cvs-commit
mailing list