perf test task_exit: No need for a cycles event to check if we get an PERF_RECORD_EXIT
authorArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 14 Jul 2023 18:29:31 +0000 (15:29 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Mon, 17 Jul 2023 13:27:44 +0000 (10:27 -0300)
commit2480232c61b888a160153b9022858ac8c4362d5f
tree4b184f53f9eb4816906a0fb76f04b872ead7e4bb
parent963293ff058cef54718fd225a542c73778257b3c
perf test task_exit: No need for a cycles event to check if we get an PERF_RECORD_EXIT

The intent of this test is to check we get a PERF_RECORD_EXIT as asked
for by setting perf_event_attr.task=1.

When the test was written we didn't had the "dummy" event so we went
with the default event, "cycles".

There were reports of this test failing sometimes, one of these reports
was with a PREEMPT_RT_FULL, but I noticed it failing sometimes with an
aarch64 Firefly board.

In the kernel the call to perf_event_task_output(), that generates the
PERF_RECORD_EXIT may fail when there is not enough memory in the ring
buffer, if the ring buffer is paused, etc.

So switch to using the "dummy" event to use the ring buffer just for
what the test was designed for, avoiding uneeded PERF_RECORD_SAMPLEs.

Acked-by: Ian Rogers <irogers@google.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Juri Lelli <juri.lelli@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/lkml/ZLGXmMuNRpx1ubFm@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/tests/task-exit.c