cgroup/cpuset: Minor updates to test_cpuset_prs.sh
authorWaiman Long <longman@redhat.com>
Fri, 17 Mar 2023 15:15:08 +0000 (11:15 -0400)
committerTejun Heo <tj@kernel.org>
Wed, 29 Mar 2023 18:42:25 +0000 (08:42 -1000)
This patch makes the following minor updates to the cpuset partition
testing script test_cpuset_prs.sh.

 - Remove online_cpus function call as it will be called anyway on exit
   in cleanup.
 - Make the enabling of sched/verbose debugfs flag conditional on the
   "-v" verbose option and set DELAY_FACTOR to 2 in this case as cpuset
   partition operations are likely to be slowed down by enabling that.

Signed-off-by: Waiman Long <longman@redhat.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
tools/testing/selftests/cgroup/test_cpuset_prs.sh

index 75c100d..2b5215c 100755 (executable)
@@ -15,13 +15,6 @@ skip_test() {
 
 [[ $(id -u) -eq 0 ]] || skip_test "Test must be run as root!"
 
-# Set sched verbose flag, if available
-if [[ -d /sys/kernel/debug/sched ]]
-then
-       # Used to restore the original setting during cleanup
-       SCHED_DEBUG=$(cat /sys/kernel/debug/sched/verbose)
-       echo Y > /sys/kernel/debug/sched/verbose
-fi
 
 # Get wait_inotify location
 WAIT_INOTIFY=$(cd $(dirname $0); pwd)/wait_inotify
@@ -37,10 +30,14 @@ CPUS=$(lscpu | grep "^CPU(s):" | sed -e "s/.*:[[:space:]]*//")
 PROG=$1
 VERBOSE=
 DELAY_FACTOR=1
+SCHED_DEBUG=
 while [[ "$1" = -* ]]
 do
        case "$1" in
                -v) VERBOSE=1
+                   # Enable sched/verbose can slow thing down
+                   [[ $DELAY_FACTOR -eq 1 ]] &&
+                       DELAY_FACTOR=2
                    break
                    ;;
                -d) DELAY_FACTOR=$2
@@ -54,6 +51,14 @@ do
        shift
 done
 
+# Set sched verbose flag if available when "-v" option is specified
+if [[ -n "$VERBOSE" && -d /sys/kernel/debug/sched ]]
+then
+       # Used to restore the original setting during cleanup
+       SCHED_DEBUG=$(cat /sys/kernel/debug/sched/verbose)
+       echo Y > /sys/kernel/debug/sched/verbose
+fi
+
 cd $CGROUP2
 echo +cpuset > cgroup.subtree_control
 [[ -d test ]] || mkdir test
@@ -65,7 +70,8 @@ cleanup()
        rmdir A1/A2/A3 A1/A2 A1 B1 > /dev/null 2>&1
        cd ..
        rmdir test > /dev/null 2>&1
-       echo "$SCHED_DEBUG" > /sys/kernel/debug/sched/verbose
+       [[ -n "$SCHED_DEBUG" ]] &&
+               echo "$SCHED_DEBUG" > /sys/kernel/debug/sched/verbose
 }
 
 # Pause in ms
@@ -571,7 +577,6 @@ run_state_test()
                        echo "Test $TEST[$I] failed result check!"
                        eval echo \"\${$TEST[$I]}\"
                        dump_states
-                       online_cpus
                        exit 1
                }
 
@@ -582,7 +587,6 @@ run_state_test()
                                eval echo \"\${$TEST[$I]}\"
                                echo
                                dump_states
-                               online_cpus
                                exit 1
                        }
                }
@@ -594,7 +598,6 @@ run_state_test()
                                eval echo \"\${$TEST[$I]}\"
                                echo
                                dump_states
-                               online_cpus
                                exit 1
                        }
                }