Re: [PATCH] perf pmu: Fix a potential memory leak in perf_pmu__lookup()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Feb 25, 2024 at 7:42 AM Christophe JAILLET
<christophe.jaillet@xxxxxxxxxx> wrote:
>
> Le 26/08/2023 à 23:32, Christophe JAILLET a écrit :
> > The commit in Fixes has reordered some code, but missed an error handling
> > path.
> >
> > 'goto err' now, in order to avoid a memory leak in case of error.
> >
> > Fixes: f63a536f03a2 ("perf pmu: Merge JSON events with sysfs at load time")
> > Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
> > ---
>
> Hi,
>
> polite reminder.

Apologies for the delay.

Reviewed-by: Ian Rogers <irogers@xxxxxxxxxx>

Thanks,
Ian

> CJ
>
>
> >   tools/perf/util/pmu.c | 7 +++----
> >   1 file changed, 3 insertions(+), 4 deletions(-)
> >
> > diff --git a/tools/perf/util/pmu.c b/tools/perf/util/pmu.c
> > index bb2ca29cd7bd..8dfce84ad9fe 100644
> > --- a/tools/perf/util/pmu.c
> > +++ b/tools/perf/util/pmu.c
> > @@ -1018,10 +1018,9 @@ struct perf_pmu *perf_pmu__lookup(struct list_head *pmus, int dirfd, const char
> >        * type value and format definitions. Load both right
> >        * now.
> >        */
> > -     if (pmu_format(pmu, dirfd, name)) {
> > -             free(pmu);
> > -             return NULL;
> > -     }
> > +     if (pmu_format(pmu, dirfd, name))
> > +             goto err;
> > +
> >       pmu->is_core = is_pmu_core(name);
> >       pmu->cpus = pmu_cpumask(dirfd, name, pmu->is_core);
> >
>





[Index of Archives]     [Kernel Development]     [Kernel Announce]     [Kernel Newbies]     [Linux Networking Development]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Device Mapper]

  Powered by Linux