[<prev] [next>] [day] [month] [year] [list]
Message-ID: <ZLGXmMuNRpx1ubFm@kernel.org>
Date: Fri, 14 Jul 2023 15:44:40 -0300
From: Arnaldo Carvalho de Melo <acme@...nel.org>
To: Namhyung Kim <namhyung@...nel.org>
Cc: Adrian Hunter <adrian.hunter@...el.com>,
Ian Rogers <irogers@...gle.com>, Jiri Olsa <jolsa@...nel.org>,
Juri Lelli <juri.lelli@...hat.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 1/1] perf test task_exit: No need for a cycles event to
check if we get an PERF_RECORD_EXIT
Forgot to CC lkml :-\
Em Fri, Jul 14, 2023 at 03:39:22PM -0300, Arnaldo Carvalho de Melo escreveu:
> 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 have 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 kernel, but I noticed it failing sometimes
> on 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.
>
> Cc: Adrian Hunter <adrian.hunter@...el.com>
> Cc: Ian Rogers <irogers@...gle.com>
> Cc: Jiri Olsa <jolsa@...nel.org>
> Cc: Juri Lelli <juri.lelli@...hat.com>
> Cc: Namhyung Kim <namhyung@...nel.org>
> Signed-off-by: Arnaldo Carvalho de Melo <acme@...hat.com>
> ---
> tools/perf/tests/task-exit.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tools/perf/tests/task-exit.c b/tools/perf/tests/task-exit.c
> index 25f075fa9125bd53..968dddde6ddaf0be 100644
> --- a/tools/perf/tests/task-exit.c
> +++ b/tools/perf/tests/task-exit.c
> @@ -58,9 +58,9 @@ static int test__task_exit(struct test_suite *test __maybe_unused, int subtest _
>
> signal(SIGCHLD, sig_handler);
>
> - evlist = evlist__new_default();
> + evlist = evlist__new_dummy();
> if (evlist == NULL) {
> - pr_debug("evlist__new_default\n");
> + pr_debug("evlist__new_dummy\n");
> return -1;
> }
>
> --
> 2.37.1
>
--
- Arnaldo
Powered by blists - more mailing lists