Re: [PATCH] perf test: Remove atomics from test_loop to avoid test failures

From: Arnaldo Carvalho de Melo
Date: Tue Nov 21 2023 - 12:04:34 EST


Em Fri, Nov 03, 2023 at 09:14:45AM +0000, James Clark escreveu:
> On 02/11/2023 16:22, Nick Forrington wrote:
> > The current use of atomics can lead to test failures, as tests (such as
> > tests/shell/record.sh) search for samples with "test_loop" as the
> > top-most stack frame, but find frames related to the atomic operation
> > (e.g. __aarch64_ldadd4_relax).

> > This change simply removes the "count" variable, as it is not necessary.

> > Fixes: 1962ab6f6e0b ("perf test workload thloop: Make count increments atomic")
> > Signed-off-by: Nick Forrington <nick.forrington@xxxxxxx>

> > +++ b/tools/perf/tests/workloads/thloop.c
> > @@ -7,7 +7,6 @@
> > #include "../tests.h"
> > static volatile sig_atomic_t done;
> > -static volatile unsigned count;
> > /* We want to check this symbol in perf report */
> > noinline void test_loop(void);
> > @@ -19,8 +18,7 @@ static void sighandler(int sig __maybe_unused)
> > noinline void test_loop(void)
> > {
> > - while (!done)
> > - __atomic_fetch_add(&count, 1, __ATOMIC_RELAXED);
> > + while (!done);
> > }
> > static void *thfunc(void *arg)

> Reviewed-by: James Clark <james.clark@xxxxxxx>

Thanks, applied to perf-tools-next.

- Arnaldo