Re: [PATCH v1] perf test: Fix hybrid testing of event fallback test

From: Namhyung Kim

Date: Tue Dec 02 2025 - 18:59:47 EST


On Tue, Dec 02, 2025 at 03:05:12PM -0800, Ian Rogers wrote:
> On Tue, Dec 2, 2025 at 1:41 PM Namhyung Kim <namhyung@xxxxxxxxxx> wrote:
> >
> > On Mon, Dec 01, 2025 at 03:11:36PM -0800, Ian Rogers wrote:
> > > The mem-loads-aux event exists on hybrid systems but the "cpu" PMU
> > > does not. This causes an event parsing error which erroneously makes
> > > the test look like it is failing. Avoid naming the PMU to avoid
> > > this. Rather than cleaning up perf.data in the directory the test is
> > > run, explicitly send the 'perf record' output to /dev/null and avoid
> > > any cleanup scripts.
> > >
> > > Fixes: fc9c17b22352 ("perf test: Add a perf event fallback test")
> > > Signed-off-by: Ian Rogers <irogers@xxxxxxxxxx>
> > > ---
> > > .../tests/shell/test_event_open_fallback.sh | 19 ++-----------------
> > > 1 file changed, 2 insertions(+), 17 deletions(-)
> > >
> > > diff --git a/tools/perf/tests/shell/test_event_open_fallback.sh b/tools/perf/tests/shell/test_event_open_fallback.sh
> > > index 9c411153c01b..9420a7557c13 100755
> > > --- a/tools/perf/tests/shell/test_event_open_fallback.sh
> > > +++ b/tools/perf/tests/shell/test_event_open_fallback.sh
> > > @@ -6,24 +6,9 @@ skip_cnt=0
> > > ok_cnt=0
> > > err_cnt=0
> > >
> > > -cleanup()
> > > -{
> > > - rm -f perf.data
> > > - rm -f perf.data.old
> > > - trap - EXIT TERM INT
> > > -}
> > > -
> > > -trap_cleanup()
> > > -{
> > > - cleanup
> > > - exit 1
> > > -}
> > > -
> > > -trap trap_cleanup EXIT TERM INT
> > > -
> > > perf_record()
> > > {
> > > - perf record "$@" -- true 1>/dev/null 2>&1
> > > + perf record -o /dev/null "$@" -- true 1>/dev/null 2>&1
> > > }
> > >
> > > test_decrease_precise_ip()
> > > @@ -49,7 +34,7 @@ test_decrease_precise_ip_complicated()
> > >
> > > perf list pmu | grep -q 'mem-loads-aux' || return 2
> > >
> > > - if ! perf_record -e '{cpu/mem-loads-aux/S,cpu/mem-loads/PS}'; then
> > > + if ! perf_record -e '{mem-loads-aux:S,mem-loads:PS}'; then
> >
> > I think we need to either keep the trap handler or convert all perf
> > record commands including this to use -o /dev/null.
>
> So all the perf record commands use "-o /dev/null" as perf record is
> always run using the "perf_record" function (ie the one updated here)
> :-)

Oh.. I missed that. LGTM!

Thanks,
Namhyung

> >
> >
> > > return 1
> > > fi
> > > return 0
> > > --
> > > 2.52.0.158.g65b55ccf14-goog
> > >