]>
Commit | Line | Data |
---|---|---|
1c511f26 | 1 | #!/bin/sh -eux |
b4a2f20a SG |
2 | |
3 | PASS=0 | |
4 | ||
5 | cleanup() { | |
794ed8d5 | 6 | [ "$PASS" = "1" ] || (echo FAIL && exit 1) |
b4a2f20a SG |
7 | } |
8 | ||
1c511f26 SH |
9 | LXCFSDIR=${LXCFSDIR:-/var/lib/lxcfs} |
10 | ||
b4a2f20a SG |
11 | trap cleanup EXIT HUP INT TERM |
12 | ||
1c511f26 SH |
13 | if ! mountpoint -q ${LXCFSDIR}; then |
14 | echo "lxcfs isn't mounted on ${LXCFSDIR}" | |
b4a2f20a SG |
15 | exit 1 |
16 | fi | |
17 | ||
18 | # Initial cleanup | |
19 | cgm remove freezer lxcfs_test_cgroup/sub >/dev/null 2>&1 || true | |
20 | cgm remove all lxcfs_test_cgroup >/dev/null 2>&1 || true | |
21 | ||
22 | # Check that the fs is readable | |
1c511f26 | 23 | find ${LXCFSDIR}/cgroup/ >/dev/null |
b4a2f20a SG |
24 | |
25 | # Do some fs checks | |
26 | cgm create all lxcfs_test_cgroup | |
27 | cgm removeonempty all lxcfs_test_cgroup | |
28 | cgm movepid all lxcfs_test_cgroup $$ | |
29 | ||
30 | CGPATH=$(cgm getpidcgroupabs freezer $$) | |
31 | ||
32 | echo $((1024*1024)) > \ | |
1c511f26 | 33 | ${LXCFSDIR}/cgroup/memory/$CGPATH/memory.limit_in_bytes |
b4a2f20a | 34 | echo 0 > \ |
1c511f26 | 35 | ${LXCFSDIR}/cgroup/cpuset/$CGPATH/cpuset.cpus |
b4a2f20a SG |
36 | |
37 | [ "$(cgm getvalue memory $CGPATH memory.limit_in_bytes)" = "$((1024*1024))" ] | |
38 | [ "$(cgm getvalue cpuset $CGPATH cpuset.cpus)" = "0" ] | |
39 | ||
1c511f26 SH |
40 | mkdir ${LXCFSDIR}/cgroup/freezer/$CGPATH/sub |
41 | echo $$ > ${LXCFSDIR}/cgroup/freezer/$CGPATH/sub/tasks | |
b4a2f20a SG |
42 | |
43 | [ "$(cgm getpidcgroupabs freezer $$)" = "$CGPATH/sub" ] | |
44 | ||
45 | PASS=1 | |
46 | echo PASS |