[PATCH v3 0/3] perf tools: Fix memory issues

Michalis Niarchos via B4 Relay posted 3 patches 1 month, 4 weeks ago
tools/perf/builtin-kvm.c                         | 99 +++++++++++-------------
tools/perf/util/kvm-stat-arch/kvm-stat-powerpc.c |  4 +-
tools/perf/util/kvm-stat-arch/kvm-stat-x86.c     | 10 +--
3 files changed, 50 insertions(+), 63 deletions(-)
[PATCH v3 0/3] perf tools: Fix memory issues
Posted by Michalis Niarchos via B4 Relay 1 month, 4 weeks ago
Running:
  $ perf kvm stat record -a sleep 10

gives this output:
  [ perf record: Woken up 1 times to write data ]
  [ perf record: Captured and wrote 1.361 MB perf.data.guest ]
  double free or corruption (!prev)

In the process of resolving this, I came across some memory leaks.

Signed-off-by: Michalis Niarchos <michael.niarchos@gmail.com>
---
Changes in v3:
- Moved dead code removal to the correct patch.
- Squashed double free patches, as both fix the same rec_argv
  double-free/leak pattern.
- Link to v2: https://patch.msgid.link/20260803-perf-kvm-fixes-v2-0-1b337189fffc@gmail.com

Changes in v2:
- Removed code block that was rendered dead by the
  get_filename_for_perf_kvm() change.
- Dropped invalid free() fix from kvm_events_report().
- Added double free fixes for: __cmd_record(), __cmd_report(),
  __cmd_buildid_list(), and __cmd_top(), which follow the same pattern
  as kvm_events_record().
- Link to v1: https://patch.msgid.link/20260803-perf-kvm-fixes-v1-0-a5db849ac973@gmail.com

To: Peter Zijlstra <peterz@infradead.org>
To: Ingo Molnar <mingo@redhat.com>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Namhyung Kim <namhyung@kernel.org>
To: Mark Rutland <mark.rutland@arm.com>
To: Alexander Shishkin <alexander.shishkin@linux.intel.com>
To: Jiri Olsa <jolsa@kernel.org>
To: Ian Rogers <irogers@google.com>
To: Adrian Hunter <adrian.hunter@intel.com>
To: James Clark <james.clark@linaro.org>
Cc: linux-perf-users@vger.kernel.org
Cc: linux-kernel@vger.kernel.org

---
Michalis Niarchos (3):
      perf tools: Fix memory leak in cmd_kvm()
      perf tools: Fix double free and memory leak issues
      perf tools: Fix memory leak in cmd_kvm()

 tools/perf/builtin-kvm.c                         | 99 +++++++++++-------------
 tools/perf/util/kvm-stat-arch/kvm-stat-powerpc.c |  4 +-
 tools/perf/util/kvm-stat-arch/kvm-stat-x86.c     | 10 +--
 3 files changed, 50 insertions(+), 63 deletions(-)
---
base-commit: a1ed064cb4db70af8c4177b3805ca5b8b0be567e
change-id: 20260731-perf-kvm-fixes-a17f0aa048ad

Best regards,
--  
Michalis Niarchos <michael.niarchos@gmail.com>
Re: [PATCH v3 0/3] perf tools: Fix memory issues
Posted by Namhyung Kim 1 month, 3 weeks ago
Hello,

On Mon, Aug 03, 2026 at 03:51:51PM +0200, Michalis Niarchos via B4 Relay wrote:
> Running:
>   $ perf kvm stat record -a sleep 10
> 
> gives this output:
>   [ perf record: Woken up 1 times to write data ]
>   [ perf record: Captured and wrote 1.361 MB perf.data.guest ]
>   double free or corruption (!prev)
> 
> In the process of resolving this, I came across some memory leaks.

I think those issues are already fixed in the perf-tools-next.
Can you please check the latest code?

Thanks,
Namhyung

> 
> Signed-off-by: Michalis Niarchos <michael.niarchos@gmail.com>
> ---
> Changes in v3:
> - Moved dead code removal to the correct patch.
> - Squashed double free patches, as both fix the same rec_argv
>   double-free/leak pattern.
> - Link to v2: https://patch.msgid.link/20260803-perf-kvm-fixes-v2-0-1b337189fffc@gmail.com
> 
> Changes in v2:
> - Removed code block that was rendered dead by the
>   get_filename_for_perf_kvm() change.
> - Dropped invalid free() fix from kvm_events_report().
> - Added double free fixes for: __cmd_record(), __cmd_report(),
>   __cmd_buildid_list(), and __cmd_top(), which follow the same pattern
>   as kvm_events_record().
> - Link to v1: https://patch.msgid.link/20260803-perf-kvm-fixes-v1-0-a5db849ac973@gmail.com
> 
> To: Peter Zijlstra <peterz@infradead.org>
> To: Ingo Molnar <mingo@redhat.com>
> To: Arnaldo Carvalho de Melo <acme@kernel.org>
> To: Namhyung Kim <namhyung@kernel.org>
> To: Mark Rutland <mark.rutland@arm.com>
> To: Alexander Shishkin <alexander.shishkin@linux.intel.com>
> To: Jiri Olsa <jolsa@kernel.org>
> To: Ian Rogers <irogers@google.com>
> To: Adrian Hunter <adrian.hunter@intel.com>
> To: James Clark <james.clark@linaro.org>
> Cc: linux-perf-users@vger.kernel.org
> Cc: linux-kernel@vger.kernel.org
> 
> ---
> Michalis Niarchos (3):
>       perf tools: Fix memory leak in cmd_kvm()
>       perf tools: Fix double free and memory leak issues
>       perf tools: Fix memory leak in cmd_kvm()
> 
>  tools/perf/builtin-kvm.c                         | 99 +++++++++++-------------
>  tools/perf/util/kvm-stat-arch/kvm-stat-powerpc.c |  4 +-
>  tools/perf/util/kvm-stat-arch/kvm-stat-x86.c     | 10 +--
>  3 files changed, 50 insertions(+), 63 deletions(-)
> ---
> base-commit: a1ed064cb4db70af8c4177b3805ca5b8b0be567e
> change-id: 20260731-perf-kvm-fixes-a17f0aa048ad
> 
> Best regards,
> --  
> Michalis Niarchos <michael.niarchos@gmail.com>
> 
>
Re: [PATCH v3 0/3] perf tools: Fix memory issues
Posted by Michalis Niarchos 1 month, 3 weeks ago
Hi,

Confirming that the issues addressed by these patches have already been
fixed in perf-tools-next. Please disregard them.

Thanks for pointing me to the perf-tools-next tree — I was comparing
against mainline and hadn't checked there.

Regards,
Michalis