Ping. On 2024/07/02 17:54, GONG, Ruiqi wrote: > Currently for systems that only enable cgroup v2, the test script would > fail to move the target process into the root cgroup since the cgroup v1 > path is used, which therefore makes the testcase fail. Add cgroup v2 > handling here so that no matter which cgroup version the CPU controller > is bound to, the target process can always be moved to the root CPU > cgroup. > > Signed-off-by: GONG, Ruiqi <gongruiqi1@xxxxxxxxxx> > --- > tests/task_setscheduler/test | 17 +++++++++++------ > 1 file changed, 11 insertions(+), 6 deletions(-) > > diff --git a/tests/task_setscheduler/test b/tests/task_setscheduler/test > index c2fe8c6..fa1efb1 100755 > --- a/tests/task_setscheduler/test > +++ b/tests/task_setscheduler/test > @@ -20,12 +20,17 @@ vec( $rin, fileno($f), 1 ) = 1; > select( $rin, undef, undef, 5 ); > close($f); > > -$cgroup_cpu = "/sys/fs/cgroup/cpu/tasks"; > -if ( -w $cgroup_cpu ) { > - > - # We can only set the scheduler policy fo SCHED_{RR,FIFO} in the root > - # cgroup so move our target process to the root cgroup. > - open( my $fd, ">>", $cgroup_cpu ); > +# We can only set the scheduler policy fo SCHED_{RR,FIFO} in the root > +# cgroup so move our target process to the root cgroup. > +$cgroup_v1_cpu = "/sys/fs/cgroup/cpu/tasks"; > +if ( -w $cgroup_v1_cpu ) { > + open( my $fd, ">>", $cgroup_v1_cpu ); > + print $fd $pid; > + close $fd; > +} > +$cgroup_v2 = "/sys/fs/cgroup/cgroup.procs"; > +if ( -w $cgroup_v2 ) { > + open( my $fd, ">>", $cgroup_v2 ); > print $fd $pid; > close $fd; > }