Re: [PATCH 1/1] perf tests pmu: Initialize all fields of test_pmu variable

From: Ian Rogers
Date: Thu Aug 29 2024 - 16:17:45 EST


On Mon, Aug 12, 2024 at 7:05 AM Veronika Molnarova <vmolnaro@xxxxxxxxxx> wrote:
>
>
>
> On 8/12/24 15:03, Arnaldo Carvalho de Melo wrote:
> > Instead of explicitely initializing just the .name and .alias_name,
> > use struct member named initialization of just the non-null -name field,
> > the compiler will initialize all the other non-explicitely initialized
> > fields to NULL.
> >
> > This makes the code more robust, avoiding the error recently fixed when
> > the .alias_name was used and contained a random value.
> >
> > Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
> > Cc: Ian Rogers <irogers@xxxxxxxxxx>
> > Cc: James Clark <james.clark@xxxxxxx>
> > Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
> > Cc: Kan Liang <kan.liang@xxxxxxxxxxxxxxx>
> > Cc: Michael Petlan <mpetlan@xxxxxxxxxx>
> > Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
> > Cc: Radostin Stoyanov <rstoyano@xxxxxxxxxx>
> > Cc: Veronika Molnarova <vmolnaro@xxxxxxxxxx>
> > Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
> > ---
> > tools/perf/tests/pmu.c | 6 +++---
> > 1 file changed, 3 insertions(+), 3 deletions(-)
> >
> > diff --git a/tools/perf/tests/pmu.c b/tools/perf/tests/pmu.c
> > index a4730b5dc0d9259d..be18506f6a242546 100644
> > --- a/tools/perf/tests/pmu.c
> > +++ b/tools/perf/tests/pmu.c
> > @@ -458,10 +458,10 @@ static int test__name_cmp(struct test_suite *test __maybe_unused, int subtest __
> > */
> > static int test__pmu_match(struct test_suite *test __maybe_unused, int subtest __maybe_unused)
> > {
> > - struct perf_pmu test_pmu;
> > - test_pmu.alias_name = NULL;
> > + struct perf_pmu test_pmu = {
> > + .name = "pmuname",
> > + };
> >
> > - test_pmu.name = "pmuname";
> > TEST_ASSERT_EQUAL("Exact match", perf_pmu__match(&test_pmu, "pmuname"), true);
> > TEST_ASSERT_EQUAL("Longer token", perf_pmu__match(&test_pmu, "longertoken"), false);
> > TEST_ASSERT_EQUAL("Shorter token", perf_pmu__match(&test_pmu, "pmu"), false);
>
> Reviewed-by: Veronika Molnarova <vmolnaro@xxxxxxxxxx>
>
> Thanks for the rework,
> Veronika

This seems like a simple enough fix for a test that it could be
cherry-picked into perf-tools for v6.11, I'm not seeing it currently:
https://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools.git/log/tools/perf/tests/pmu.c?h=perf-tools

Thanks,
Ian