7 [ "$PASS" = "1" ] ||
(echo FAIL
&& exit 1)
10 LXCFSDIR
=${LXCFSDIR:-/var/lib/lxcfs}
12 trap cleanup EXIT HUP INT TERM
14 if ! mountpoint
-q ${LXCFSDIR}; then
15 echo "lxcfs isn't mounted on ${LXCFSDIR}"
19 for c
in memory freezer cpuset
; do
20 [ ! -d /sys
/fs
/cgroup
/${c} ] && exit 0
23 initcpuset
=`awk -F: '/cpuset/ { print $3 }' /proc/1/cgroup`
24 initmemory
=`awk -F: '/memory/ { print $3 }' /proc/1/cgroup`
25 initfreezer
=`awk -F: '/freezer/ { print $3 }' /proc/1/cgroup`
27 cpupath
=/sys
/fs
/cgroup
/cpuset
/${initcpuset}
28 mempath
=/sys
/fs
/cgroup
/memory
/${initmemory}
29 frzpath
=/sys
/fs
/cgroup
/freezer
/${initfreezer}
31 rmdir ${cpupath}/${UUID} || true
32 rmdir ${mempath}/${UUID} || true
33 rmdir ${frzpath}/${UUID} || true
34 mkdir
${cpupath}/${UUID}
35 mkdir
${mempath}/${UUID}
36 mkdir
${frzpath}/${UUID}
38 # Check that the fs is readable
39 for p
in ${mempath} ${frzpath} ${cpupath}; do
41 echo 1 > ${p}/${UUID}/tasks
44 # set values though lxcfs
45 echo $
((1024*1024)) > ${LXCFSDIR}/cgroup/memory/${initmemory}/${UUID}/memory.limit_in_bytes
46 echo 0 > ${LXCFSDIR}/cgroup/cpuset/${initcpuset}/${UUID}/cpuset.cpus
48 # and verify them through cgroupfs
49 v
=`cat $mempath/${UUID}/memory.limit_in_bytes`
50 [ "$v" = "$((1024*1024))" ]
51 v
=`cat ${cpupath}/${UUID}/cpuset.cpus`