[PATCH] selftests/powerpc: Turn off timeout setting for benchmarks, dscr, signal, tm

Po-Hsu Lin po-hsu.lin at canonical.com
Thu Mar 5 20:02:45 AEDT 2020


On Thu, Mar 5, 2020 at 3:32 PM Michael Ellerman <mpe at ellerman.id.au> wrote:
>
> Po-Hsu Lin <po-hsu.lin at canonical.com> writes:
> > Some specific tests in powerpc can take longer than the default 45
> > seconds that added in commit 852c8cbf (selftests/kselftest/runner.sh:
> > Add 45 second timeout per test) to run, the following test result was
> > collected across 2 Power8 nodes and 1 Power9 node in our pool:
> >   powerpc/benchmarks/futex_bench - 52s
> >   powerpc/dscr/dscr_sysfs_test - 116s
> >   powerpc/signal/signal_fuzzer - 88s
> >   powerpc/tm/tm_unavailable_test - 168s
> >   powerpc/tm/tm-poison - 240s
> >
> > Thus they will fail with TIMEOUT error. Disable the timeout setting
> > for these sub-tests to allow them finish properly.
>
> I run the powerpc tests with run-parts, rather than the kselftest
> script, we already have our own test runner with a 120s timeout.
>
> I didn't think the kselftests runner actually worked with the powerpc
> tests? Because we override RUN_TESTS.
>
Hello Michael,

I have done a small experiment with timeout=1 in settings and use
run-parts to run the executables, it looks like this change won't
affect run-parts.

Not quite sure about the RUN_TESTS you mentioned here, we're testing
it with command like:
sudo make -C linux/tools/testing/selftests TARGETS=powerpc run_tests
And the timeout setting will take effect with this.

Thanks

> cheers
>
>
> > https://bugs.launchpad.net/bugs/1864642
> > Signed-off-by: Po-Hsu Lin <po-hsu.lin at canonical.com>
> > ---
> >  tools/testing/selftests/powerpc/benchmarks/Makefile | 2 ++
> >  tools/testing/selftests/powerpc/benchmarks/settings | 1 +
> >  tools/testing/selftests/powerpc/dscr/Makefile       | 2 ++
> >  tools/testing/selftests/powerpc/dscr/settings       | 1 +
> >  tools/testing/selftests/powerpc/signal/Makefile     | 2 ++
> >  tools/testing/selftests/powerpc/signal/settings     | 1 +
> >  tools/testing/selftests/powerpc/tm/Makefile         | 2 ++
> >  tools/testing/selftests/powerpc/tm/settings         | 1 +
> >  8 files changed, 12 insertions(+)
> >  create mode 100644 tools/testing/selftests/powerpc/benchmarks/settings
> >  create mode 100644 tools/testing/selftests/powerpc/dscr/settings
> >  create mode 100644 tools/testing/selftests/powerpc/signal/settings
> >  create mode 100644 tools/testing/selftests/powerpc/tm/settings
> >
> > diff --git a/tools/testing/selftests/powerpc/benchmarks/Makefile b/tools/testing/selftests/powerpc/benchmarks/Makefile
> > index d40300a..a32a6ab 100644
> > --- a/tools/testing/selftests/powerpc/benchmarks/Makefile
> > +++ b/tools/testing/selftests/powerpc/benchmarks/Makefile
> > @@ -2,6 +2,8 @@
> >  TEST_GEN_PROGS := gettimeofday context_switch fork mmap_bench futex_bench null_syscall
> >  TEST_GEN_FILES := exec_target
> >
> > +TEST_FILES := settings
> > +
> >  CFLAGS += -O2
> >
> >  top_srcdir = ../../../../..
> > diff --git a/tools/testing/selftests/powerpc/benchmarks/settings b/tools/testing/selftests/powerpc/benchmarks/settings
> > new file mode 100644
> > index 0000000..e7b9417
> > --- /dev/null
> > +++ b/tools/testing/selftests/powerpc/benchmarks/settings
> > @@ -0,0 +1 @@
> > +timeout=0
> > diff --git a/tools/testing/selftests/powerpc/dscr/Makefile b/tools/testing/selftests/powerpc/dscr/Makefile
> > index 5df4763..cfa6eed 100644
> > --- a/tools/testing/selftests/powerpc/dscr/Makefile
> > +++ b/tools/testing/selftests/powerpc/dscr/Makefile
> > @@ -3,6 +3,8 @@ TEST_GEN_PROGS := dscr_default_test dscr_explicit_test dscr_user_test \
> >             dscr_inherit_test dscr_inherit_exec_test dscr_sysfs_test  \
> >             dscr_sysfs_thread_test
> >
> > +TEST_FILES := settings
> > +
> >  top_srcdir = ../../../../..
> >  include ../../lib.mk
> >
> > diff --git a/tools/testing/selftests/powerpc/dscr/settings b/tools/testing/selftests/powerpc/dscr/settings
> > new file mode 100644
> > index 0000000..e7b9417
> > --- /dev/null
> > +++ b/tools/testing/selftests/powerpc/dscr/settings
> > @@ -0,0 +1 @@
> > +timeout=0
> > diff --git a/tools/testing/selftests/powerpc/signal/Makefile b/tools/testing/selftests/powerpc/signal/Makefile
> > index 113838f..153fafc 100644
> > --- a/tools/testing/selftests/powerpc/signal/Makefile
> > +++ b/tools/testing/selftests/powerpc/signal/Makefile
> > @@ -5,6 +5,8 @@ CFLAGS += -maltivec
> >  $(OUTPUT)/signal_tm: CFLAGS += -mhtm
> >  $(OUTPUT)/sigfuz: CFLAGS += -pthread -m64
> >
> > +TEST_FILES := settings
> > +
> >  top_srcdir = ../../../../..
> >  include ../../lib.mk
> >
> > diff --git a/tools/testing/selftests/powerpc/signal/settings b/tools/testing/selftests/powerpc/signal/settings
> > new file mode 100644
> > index 0000000..e7b9417
> > --- /dev/null
> > +++ b/tools/testing/selftests/powerpc/signal/settings
> > @@ -0,0 +1 @@
> > +timeout=0
> > diff --git a/tools/testing/selftests/powerpc/tm/Makefile b/tools/testing/selftests/powerpc/tm/Makefile
> > index b15a1a3..7b99d09 100644
> > --- a/tools/testing/selftests/powerpc/tm/Makefile
> > +++ b/tools/testing/selftests/powerpc/tm/Makefile
> > @@ -7,6 +7,8 @@ TEST_GEN_PROGS := tm-resched-dscr tm-syscall tm-signal-msr-resv tm-signal-stack
> >       $(SIGNAL_CONTEXT_CHK_TESTS) tm-sigreturn tm-signal-sigreturn-nt \
> >       tm-signal-context-force-tm tm-poison
> >
> > +TEST_FILES := settings
> > +
> >  top_srcdir = ../../../../..
> >  include ../../lib.mk
> >
> > diff --git a/tools/testing/selftests/powerpc/tm/settings b/tools/testing/selftests/powerpc/tm/settings
> > new file mode 100644
> > index 0000000..e7b9417
> > --- /dev/null
> > +++ b/tools/testing/selftests/powerpc/tm/settings
> > @@ -0,0 +1 @@
> > +timeout=0
> > --
> > 2.7.4


More information about the Linuxppc-dev mailing list