Add a new "-F" option to cpuset.cpus.isolation_full to enable
cpuset.cpus.isolation_full for trying out the effect of enabling
full CPU isolation.

Signed-off-by: Waiman Long <[email protected]>
---
 .../selftests/cgroup/test_cpuset_prs.sh       | 23 ++++++++++++++++++-
 1 file changed, 22 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/cgroup/test_cpuset_prs.sh 
b/tools/testing/selftests/cgroup/test_cpuset_prs.sh
index b5eb1be2248c..2a8f0cb8d252 100755
--- a/tools/testing/selftests/cgroup/test_cpuset_prs.sh
+++ b/tools/testing/selftests/cgroup/test_cpuset_prs.sh
@@ -32,6 +32,7 @@ NR_CPUS=$(lscpu | grep "^CPU(s):" | sed -e 
"s/.*:[[:space:]]*//")
 PROG=$1
 VERBOSE=0
 DELAY_FACTOR=1
+ISOLATION_FULL=
 SCHED_DEBUG=
 while [[ "$1" = -* ]]
 do
@@ -44,7 +45,10 @@ do
                -d) DELAY_FACTOR=$2
                    shift
                    ;;
-               *)  echo "Usage: $PROG [-v] [-d <delay-factor>"
+               -F) ISOLATION_FULL=1
+                   shift
+                   ;;
+               *)  echo "Usage: $PROG [-v] [-d <delay-factor>] [-F]"
                    exit
                    ;;
        esac
@@ -108,6 +112,22 @@ console_msg()
        pause 0.01
 }
 
+setup_isolation_full()
+{
+       ISOL_FULL=${CGROUP2}/cpuset.cpus.isolation_full
+       if [[ -n "$ISOLATION_FULL" ]]
+       then
+               echo 1 > $ISOL_FULL
+               set -- $(cat $ISOL_FULL)
+               ISOLATION_FLAGS=$2
+               [[ $VERBOSE -gt 0 ]] && {
+                       echo "Full CPU isolation flags: $ISOLATION_FLAGS"
+               }
+       else
+               echo 0 > $ISOL_FULL
+       fi
+}
+
 test_partition()
 {
        EXPECTED_VAL=$1
@@ -930,6 +950,7 @@ test_inotify()
 }
 
 trap cleanup 0 2 3 6
+setup_isolation_full
 run_state_test TEST_MATRIX
 test_isolated
 test_inotify
-- 
2.39.3


Reply via email to