Re: [PATCH 1/2] ftrace/selftests: workaround cgroup RT scheduling issues

From: Masami Hiramatsu
Date: Mon Feb 10 2020 - 17:53:39 EST


On Mon, 10 Feb 2020 17:18:01 -0500
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> On Fri, 7 Feb 2020 15:14:56 +0900
> Masami Hiramatsu <mhiramat@xxxxxxxxxx> wrote:
>
> > On Thu, 6 Feb 2020 15:09:19 +0000
> > Alan Maguire <alan.maguire@xxxxxxxxxx> wrote:
> >
> > > wakeup_rt.tc and wakeup.tc tests in tracers/ subdirectory
> > > fail due to the chrt command returning:
> > >
> > > chrt: failed to set pid 0's policy: Operation not permitted.
> > >
> > > To work around this, temporarily disable grout RT scheduling
> > > during ftracetest execution. Restore original value on
> > > test run completion. With these changes in place, both
> > > tests consistently pass.
> >
> > OK, this looks good to me.
> >
> > Acked-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
> >
> > Thanks!
> >
> > >
> > > Fixes: c575dea2c1a5 ("selftests/ftrace: Add wakeup_rt tracer testcase")
> > > Fixes: c1edd060b413 ("selftests/ftrace: Add wakeup tracer testcase")
> > > Signed-off-by: Alan Maguire <alan.maguire@xxxxxxxxxx>
> > > ---
> > > tools/testing/selftests/ftrace/ftracetest | 23 +++++++++++++++++++++++
> > > 1 file changed, 23 insertions(+)
> > >
> > > diff --git a/tools/testing/selftests/ftrace/ftracetest b/tools/testing/selftests/ftrace/ftracetest
> > > index 063ecb2..3207bbf 100755
> > > --- a/tools/testing/selftests/ftrace/ftracetest
> > > +++ b/tools/testing/selftests/ftrace/ftracetest
> > > @@ -29,8 +29,26 @@ err_ret=1
> > > # kselftest skip code is 4
> > > err_skip=4
> > >
> > > +# cgroup RT scheduling prevents chrt commands from succeeding, which
> > > +# induces failures in test wakeup tests. Disable for the duration of
> > > +# the tests.
> > > +sched_rt_runtime=$(sysctl -n kernel.sched_rt_runtime_us)
> >
> > OK, but can you
>
> ??
>
> Masami?

Oops, I missed to fill the comment. I meant

"but can you consider to use /proc/sys directly instead of sysctl command,
because other test cases uses /proc/sys (ftrace/fgraph-filter-stack.tc and
ftrace/func_stack_tracer.tc)?"

Thank you,

>
> -- Steve
>
> >
> > > +
> > > +set_sysctl() {
> > > + sysctl -qw ${1}=${2} >/dev/null 2>&1
> > > +}
> > > +


--
Masami Hiramatsu <mhiramat@xxxxxxxxxx>