2021-11-09 00:50:28

by Ian Rogers

[permalink] [raw]
Subject: Re: [PATCH] perf bench: Fix memory leaks.

On Sun, Nov 7, 2021 at 8:49 PM Sohaib Mohamed <[email protected]> wrote:
>
> ASan reports memory leaks while running:
>
> $ perf bench sched all
>
> Signed-off-by: Sohaib Mohamed <[email protected]>

Acked-by: Ian Rogers <[email protected]>

I think you can add:
Fixes: e27454cc6352c ("perf bench: Add sched-messaging.c: Benchmark
for scheduler and IPC mechanisms based on hackbench")

This will then get the fix backported to older stable perf commands.

Thanks,
Ian

> ---
> tools/perf/bench/sched-messaging.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/tools/perf/bench/sched-messaging.c b/tools/perf/bench/sched-messaging.c
> index 488f6e6ba1a5..fa0ff4ce2b74 100644
> --- a/tools/perf/bench/sched-messaging.c
> +++ b/tools/perf/bench/sched-messaging.c
> @@ -223,6 +223,8 @@ static unsigned int group(pthread_t *pth,
> snd_ctx->out_fds[i] = fds[1];
> if (!thread_mode)
> close(fds[0]);
> +
> + free(ctx);
> }
>
> /* Now we have all the fds, fork the senders */
> @@ -239,6 +241,8 @@ static unsigned int group(pthread_t *pth,
> for (i = 0; i < num_fds; i++)
> close(snd_ctx->out_fds[i]);
>
> + free(snd_ctx);
> +
> /* Return number of children to reap */
> return num_fds * 2;
> }
> --
> 2.25.1
>


2021-11-10 02:25:03

by Sohaib Mohamed

[permalink] [raw]
Subject: Re: [PATCH] perf bench: Fix memory leaks.

On Mon, Nov 08, 2021 at 10:57:25AM -0800, Ian Rogers wrote:
> On Sun, Nov 7, 2021 at 8:49 PM Sohaib Mohamed <[email protected]> wrote:
> >
> > ASan reports memory leaks while running:
> >
> > $ perf bench sched all
> >
> > Signed-off-by: Sohaib Mohamed <[email protected]>
>
> Acked-by: Ian Rogers <[email protected]>
>
> I think you can add:
> Fixes: e27454cc6352c ("perf bench: Add sched-messaging.c: Benchmark
> for scheduler and IPC mechanisms based on hackbench")
>
> This will then get the fix backported to older stable perf commands.

I just added these two lines to version 2:
https://lore.kernel.org/linux-perf-users/[email protected]/

Thanks,
Sohaib

>
> Thanks,
> Ian
>
> > ---
> > tools/perf/bench/sched-messaging.c | 4 ++++
> > 1 file changed, 4 insertions(+)
> >
> > diff --git a/tools/perf/bench/sched-messaging.c b/tools/perf/bench/sched-messaging.c
> > index 488f6e6ba1a5..fa0ff4ce2b74 100644
> > --- a/tools/perf/bench/sched-messaging.c
> > +++ b/tools/perf/bench/sched-messaging.c
> > @@ -223,6 +223,8 @@ static unsigned int group(pthread_t *pth,
> > snd_ctx->out_fds[i] = fds[1];
> > if (!thread_mode)
> > close(fds[0]);
> > +
> > + free(ctx);
> > }
> >
> > /* Now we have all the fds, fork the senders */
> > @@ -239,6 +241,8 @@ static unsigned int group(pthread_t *pth,
> > for (i = 0; i < num_fds; i++)
> > close(snd_ctx->out_fds[i]);
> >
> > + free(snd_ctx);
> > +
> > /* Return number of children to reap */
> > return num_fds * 2;
> > }
> > --
> > 2.25.1
> >