[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <EAC4AC1D-A305-42E2-B22F-8B64B0968841@linux.vnet.ibm.com>
Date: Tue, 14 Dec 2021 14:20:26 +0530
From: Athira Rajeev <atrajeev@...ux.vnet.ibm.com>
To: German Gomez <german.gomez@....com>
Cc: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
linux-perf-users@...r.kernel.org,
Arnaldo Carvalho de Melo <acme@...nel.org>,
John Garry <john.garry@...wei.com>,
Will Deacon <will@...nel.org>,
Mathieu Poirier <mathieu.poirier@...aro.org>,
Leo Yan <leo.yan@...aro.org>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Jiri Olsa <jolsa@...hat.com>,
Namhyung Kim <namhyung@...nel.org>,
linux-arm-kernel@...ts.infradead.org, linux-csky@...r.kernel.org,
linux-riscv@...ts.infradead.org
Subject: Re: [PATCH v2 0/3] Support register names of all architectures
> On 07-Dec-2021, at 11:36 PM, German Gomez <german.gomez@....com> wrote:
>
> The following changeset applies some corrections to the way system
> registers are processed and presented when reading perf.data files using
> the various perf tools.
>
> The commit message from [3/3] shows how register names aren't correctly
> presented when performing x-arch analysis of perf.data files (recording
> in one arch, then reading the file from a different arch).
>
> - [PATCH 1/3] Fixes a potential out-of-bounds access when reading the
> values of the registers in the perf.data file.
> - [PATCH 2/3] Fixes an issue of ARM and ARM64 registers having the
> same enum name.
> - [PATCH 3/3] Refactors the function "perf_reg_name" declared in the
> "tools/perf/util/perf_regs.h" header, in order to support every arch.
>
> Thanks,
> German
Looks good to me. Tested this patchset in powerpc by capturing regs in powerpc and doing
perf report to read the data from x86.
Reviewed-and-Tested-by: Athira Rajeev <atrajeev@...ux.vnet.ibm.com>
>
> --
> Changes since v1
>
> - Added "Reported-by" tags.
> - Removed [PATCH 2/4] because it's not needed (suggested by Athira
> Rajeev).
> - Removed [PATCH 3/4] which created additional header files with the
> register names of every arch.
> - Introduced [PATCH 2/3] to deal with ARM and ARM64 registers having the
> same enum name across "/tools/perf/".
> - Reworked the refactor of "perf_reg_name" function (now implemented in
> perf_regs.c, rather than in the header file) in [PATCH 3/3].
>
> German Gomez (3):
> perf tools: Prevent out-of-bounds access to registers
> perf tools: Rename perf_event_arm_regs for ARM64 registers
> perf tools: Support register names from all archs
>
> tools/perf/arch/arm/include/perf_regs.h | 42 --
> tools/perf/arch/arm64/include/perf_regs.h | 78 +-
> tools/perf/arch/csky/include/perf_regs.h | 82 ---
> tools/perf/arch/mips/include/perf_regs.h | 69 --
> tools/perf/arch/powerpc/include/perf_regs.h | 66 --
> tools/perf/arch/riscv/include/perf_regs.h | 74 --
> tools/perf/arch/s390/include/perf_regs.h | 78 --
> tools/perf/arch/x86/include/perf_regs.h | 82 ---
> tools/perf/builtin-script.c | 18 +-
> tools/perf/util/event.h | 5 +-
> tools/perf/util/libunwind/arm64.c | 2 +
> tools/perf/util/perf_regs.c | 671 +++++++++++++++++-
> tools/perf/util/perf_regs.h | 10 +-
> .../scripting-engines/trace-event-python.c | 10 +-
> tools/perf/util/session.c | 25 +-
> 15 files changed, 709 insertions(+), 603 deletions(-)
>
> --
> 2.25.1
>
Powered by blists - more mailing lists