Re: [PATCH] perf script: Update brstack syntax documentation

From: Yujie Liu
Date: Tue Mar 11 2025 - 05:04:53 EST


Hi Leo,

On Tue, Mar 11, 2025 at 08:14:43AM +0000, Leo Yan wrote:
> Hi Yujie,
>
> Sorry I missed this patch.
>
> On Tue, Feb 25, 2025 at 02:17:36PM +0800, Yujie Liu wrote:
> >
> > The following commits appended new fields to the end of the branch info
> > list, such as branch type and branch speculation info.
> >
> > commit 1f48989cdc7d ("perf script: Output branch sample type")
> > commit 6ade6c646035 ("perf script: Show branch speculation info")
> >
> > Update brstack syntax documentation to be consistent with the latest
> > branch info list. Improve the descriptions to help users interpret the
> > fields accurately.
> >
> > Signed-off-by: Yujie Liu <yujie.liu@xxxxxxxxx>
> > ---
> > tools/perf/Documentation/perf-script.txt | 16 +++++++++-------
> > 1 file changed, 9 insertions(+), 7 deletions(-)
> >
> > diff --git a/tools/perf/Documentation/perf-script.txt b/tools/perf/Documentation/perf-script.txt
> > index b72866ef270b..8bd105084280 100644
> > --- a/tools/perf/Documentation/perf-script.txt
> > +++ b/tools/perf/Documentation/perf-script.txt
> > @@ -239,13 +239,15 @@ OPTIONS
> > i.e., -F "" is not allowed.
> >
> > The brstack output includes branch related information with raw addresses using the
> > - /v/v/v/v/cycles syntax in the following order:
> > - FROM: branch source instruction
> > - TO : branch target instruction
> > - M/P/-: M=branch target mispredicted or branch direction was mispredicted, P=target predicted or direction predicted, -=not supported
> > - X/- : X=branch inside a transactional region, -=not in transaction region or not supported
> > - A/- : A=TSX abort entry, -=not aborted region or not supported
> > - cycles
> > + FROM/TO/PRED/INTX/ABORT/CYCLES/TYPE/SPEC syntax in the following order:
> > + FROM : branch source instruction
> > + TO : branch target instruction
> > + PRED : M=branch target mispredicted or branch direction was mispredicted, P=target predicted or direction predicted, -=not supported
>
> Can we use a more generic naming (e.g., EVENT) for this field?
>
> My patches have added a 'N' flag in this field, which stands for
> "Not taken branch". Later we might extend this field for support new
> event types.

Thank you for this feedback. Sure I'll change this field name to EVENT
in the repsin patch.

Thanks,
Yujie

>
> Thanks,
> Leo
>
> > + INTX : X=branch inside a transactional region, -=not in transaction region or not supported
> > + ABORT : A=TSX abort entry, -=not aborted region or not supported
> > + CYCLES: the number of cycles that have elapsed since the last branch was recorded
> > + TYPE : branch type
> > + SPEC : branch speculation info
> >
> > The brstacksym is identical to brstack, except that the FROM and TO addresses are printed in a symbolic form if possible.
> >
> > --
> > 2.34.1
> >
> >