[LTP] [PATCH 4/4] controllers/cgroup_fj: Update cgroup_fj_function to work under cgroup2
Luke Nowakowski-Krijger
luke.nowakowskikrijger@canonical.com
Sat Nov 27 01:04:25 CET 2021
Most of the tests still make sense when a controller is mounted under
cgroup2 hierarchy, but some are skipped as they don't make sense and
would fail.
Signed-off-by: Luke Nowakowski-Krijger <luke.nowakowskikrijger@canonical.com>
---
.../cgroup_fj/cgroup_fj_function.sh | 38 +++++++++++++++++--
1 file changed, 34 insertions(+), 4 deletions(-)
diff --git a/testcases/kernel/controllers/cgroup_fj/cgroup_fj_function.sh b/testcases/kernel/controllers/cgroup_fj/cgroup_fj_function.sh
index fc3ad1b63..7bff480df 100755
--- a/testcases/kernel/controllers/cgroup_fj/cgroup_fj_function.sh
+++ b/testcases/kernel/controllers/cgroup_fj/cgroup_fj_function.sh
@@ -62,6 +62,12 @@ test1()
# Group can be renamed with mv
test2()
{
+ # mv'ing cgroups is not available in cgroup2
+ if [ "$cgroup_v" = "v2" ]; then
+ tst_resm TCONF "Controller mounted on cgroup2 hierachy, skipping test"
+ return
+ fi
+
create_subgroup "$start_path/ltp_2"
if ! mv "$start_path/ltp_2" "$start_path/ltp_3"; then
@@ -81,6 +87,12 @@ test2()
# Group can be renamed with mv unless the target name exists
test3()
{
+ # mv'ing cgroups is not available in cgroup2
+ if [ "$cgroup_v" = "v2" ]; then
+ tst_resm TCONF "Controller mounted on cgroup2 hierachy, skipping test"
+ return
+ fi
+
create_subgroup "$start_path/ltp_2"
if mv "$start_path/ltp_2" "$start_path/ltp_1" > /dev/null 2>&1; then
@@ -124,12 +136,18 @@ test5()
ROD rmdir "$start_path/ltp_1/a"
- ROD echo "$pid" \> "$start_path/tasks"
+ ROD echo "$pid" \> "$start_path/$task_list"
}
# Group cannot be moved outside of hierarchy
test6()
{
+ # mv'ing cgroups is not available in cgroup2
+ if [ "$cgroup_v" = "v2" ]; then
+ tst_resm TCONF "Controller mounted on cgroup2 hierachy, skipping test"
+ return
+ fi
+
if mv "$start_path/ltp_1" "$PWD/ltp" > /dev/null 2>&1; then
tst_resm TFAIL "Subgroup $start_path/ltp_1 outside hierarchy to $PWD/ltp"
return
@@ -141,17 +159,23 @@ test6()
# Tasks file cannot be removed
test7()
{
- if rm "$start_path/ltp_1/tasks" > /dev/null 2>&1; then
- tst_resm TFAIL "Tasks file $start_path/ltp_1/tasks could be removed"
+ if rm "$start_path/ltp_1/$task_list" > /dev/null 2>&1; then
+ tst_resm TFAIL "Tasks file $start_path/ltp_1/$task_list could be removed"
return
fi
- tst_resm TPASS "Tasks file $start_path/ltp_1/tasks cannot be removed"
+ tst_resm TPASS "Tasks file $start_path/ltp_1/$task_list cannot be removed"
}
# Test notify_on_release with invalid inputs
test8()
{
+ # notify_on_release is not available in cgroup2 so skip the test
+ if [ "$cgroup_v" = "v2" ]; then
+ tst_resm TCONF "Controller mounted on cgroup2 hierachy, skipping test"
+ return
+ fi
+
if echo "-1" > "$start_path/ltp_1/notify_on_release" 2>/dev/null; then
tst_resm TFAIL "Can write -1 to $start_path/ltp_1/notify_on_release"
return
@@ -168,6 +192,12 @@ test8()
# Test that notify_on_release can be changed
test9()
{
+ # notify_on_release is not available in cgroup2 so skip the test
+ if [ "$cgroup_v" = "v2" ]; then
+ tst_resm TCONF "Controller mounted on cgroup2 hierachy, skipping test"
+ return
+ fi
+
local notify=$(ROD cat "$start_path/ltp_1/notify_on_release")
local value
--
2.32.0
More information about the ltp
mailing list