Browse code

contrib/check-config.sh: support for cgroupv2

Before:

> Generally Necessary:
> - cgroup hierarchy: nonexistent??
> (see https://github.com/tianon/cgroupfs-mount)

After:

> Generally Necessary:
> - cgroup hierarchy: cgroupv2

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
(cherry picked from commit 76b59065ae99dca155bd95e97783f14e4b8cc272)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

Kir Kolyshkin authored on 2021/01/12 05:28:21
Showing 1 changed files
... ...
@@ -155,18 +155,22 @@ echo
155 155
 echo 'Generally Necessary:'
156 156
 
157 157
 echo -n '- '
158
-cgroupSubsystemDir="$(awk '/[, ](cpu|cpuacct|cpuset|devices|freezer|memory)[, ]/ && $3 == "cgroup" { print $2 }' /proc/mounts | head -n1)"
159
-cgroupDir="$(dirname "$cgroupSubsystemDir")"
160
-if [ -d "$cgroupDir/cpu" ] || [ -d "$cgroupDir/cpuacct" ] || [ -d "$cgroupDir/cpuset" ] || [ -d "$cgroupDir/devices" ] || [ -d "$cgroupDir/freezer" ] || [ -d "$cgroupDir/memory" ]; then
161
-	echo "$(wrap_good 'cgroup hierarchy' 'properly mounted') [$cgroupDir]"
158
+if [ "$(stat -f -c %t /sys/fs/cgroup 2> /dev/null)" = '63677270' ]; then
159
+	echo "$(wrap_good 'cgroup hierarchy' 'cgroupv2')"
162 160
 else
163
-	if [ "$cgroupSubsystemDir" ]; then
164
-		echo "$(wrap_bad 'cgroup hierarchy' 'single mountpoint!') [$cgroupSubsystemDir]"
161
+	cgroupSubsystemDir="$(awk '/[, ](cpu|cpuacct|cpuset|devices|freezer|memory)[, ]/ && $3 == "cgroup" { print $2 }' /proc/mounts | head -n1)"
162
+	cgroupDir="$(dirname "$cgroupSubsystemDir")"
163
+	if [ -d "$cgroupDir/cpu" ] || [ -d "$cgroupDir/cpuacct" ] || [ -d "$cgroupDir/cpuset" ] || [ -d "$cgroupDir/devices" ] || [ -d "$cgroupDir/freezer" ] || [ -d "$cgroupDir/memory" ]; then
164
+		echo "$(wrap_good 'cgroup hierarchy' 'properly mounted') [$cgroupDir]"
165 165
 	else
166
-		wrap_bad 'cgroup hierarchy' 'nonexistent??'
166
+		if [ "$cgroupSubsystemDir" ]; then
167
+			echo "$(wrap_bad 'cgroup hierarchy' 'single mountpoint!') [$cgroupSubsystemDir]"
168
+		else
169
+			wrap_bad 'cgroup hierarchy' 'nonexistent??'
170
+		fi
171
+		EXITCODE=1
172
+		echo "    $(wrap_color '(see https://github.com/tianon/cgroupfs-mount)' yellow)"
167 173
 	fi
168
-	EXITCODE=1
169
-	echo "    $(wrap_color '(see https://github.com/tianon/cgroupfs-mount)' yellow)"
170 174
 fi
171 175
 
172 176
 if [ "$(cat /sys/module/apparmor/parameters/enabled 2> /dev/null)" = 'Y' ]; then