Re: [PATCH v4 0/4] tools perf: Add branch speculation info

From: Arnaldo Carvalho de Melo
Date: Thu Feb 02 2023 - 08:04:26 EST


Em Thu, Feb 02, 2023 at 05:56:13PM +0530, Sandipan Das escreveu:
> AMD Last Branch Record Extension Version 2 (LbrExtV2) provides branch
> speculation information and the perf UAPI is extended to provide this in
> a generic way. Make perf tool show this additional information.
>
> The UAPI changes can be found in commit 93315e46b000 ("perf/core: Add
> speculation info to branch entries").
>
> Requesting help from folks having access to big-endian systems to test
> changes in the sample parsing test as I was only able to test these in
> a ppc64 simulator.

I'll try folding some of these patches as 'perf test' must pass after
each of them, so that we keep the codebase bisectable.

Right now, after appling the first patch on this v4 series:

⬢[acme@toolbox perf]$ perf test 27
27: Sample parsing : FAILED!
⬢[acme@toolbox perf]$

- Arnaldo

> Previous versions can be found at:
> v3: https://lore.kernel.org/all/cover.1675057032.git.sandipan.das@xxxxxxx/
> v2: https://lore.kernel.org/all/cover.1664356751.git.sandipan.das@xxxxxxx/
> v1: https://lore.kernel.org/all/cover.1660217326.git.sandipan.das@xxxxxxx/
>
> Changes in v4:
> - Update tests that were failing due to changes in perf output and
> sample parsing (thanks to Arnaldo for reporting).
>
> Changes in v3:
> - Drop tools-side UAPI changes as they have already been added by other
> commits.
> - Rebase on top of latest perf/core.
>
> Changes in v2:
> - Drop msr-index.h related changes for now.
> - Rebase on top of latest perf/core.
> - Fix UAPI breakage introduced by the ARM64 BRBE changes to perf branch
> entry.
>
> Sandipan Das (4):
> perf script: Show branch speculation info
> perf session: Show branch speculation info in raw dump
> perf test sample-parsing: Update expected branch flags
> perf test brstack: Update regex to include spec field
>
> tools/perf/builtin-script.c | 5 +++--
> tools/perf/tests/sample-parsing.c | 2 +-
> tools/perf/tests/shell/test_brstack.sh | 18 +++++++++---------
> tools/perf/util/branch.c | 15 +++++++++++++++
> tools/perf/util/branch.h | 2 ++
> tools/perf/util/evsel.c | 15 ++++++++++++---
> tools/perf/util/session.c | 5 +++--
> 7 files changed, 45 insertions(+), 17 deletions(-)
>
> --
> 2.34.1
>

--

- Arnaldo