* [PATCH 1/2] perf script: Add missed "+" if br_cntr reaches upper limit
@ 2026-04-10 19:39 Thomas Falcon
2026-04-10 19:40 ` [PATCH 2/2] perf/annotate: Fix missing branch counter column in TUI mode Thomas Falcon
0 siblings, 1 reply; 4+ messages in thread
From: Thomas Falcon @ 2026-04-10 19:39 UTC (permalink / raw)
To: linux-perf-users
Cc: linux-kernel, Peter Zijlstra, Ingo Molnar,
Arnaldo Carvalho de Melo, Namhyung Kim, Mark Rutland,
Alexander Shishkin, Jiri Olsa, Ian Rogers, Adrian Hunter,
James Clark, Dapeng Mi
From: Dapeng Mi <dapeng1.mi@linux.intel.com>
Add missed "+" if br_cntr reaches upper limit.
Signed-off-by: Dapeng Mi <dapeng1.mi@linux.intel.com>
---
tools/perf/builtin-script.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c
index c8ac9f01a36b..f865c8b2f95f 100644
--- a/tools/perf/builtin-script.c
+++ b/tools/perf/builtin-script.c
@@ -1287,8 +1287,12 @@ static int ip__fprintf_jump(uint64_t ip, struct branch_entry *en,
if (!verbose) {
for (j = 0; j < num; j++)
printed += fprintf(fp, "%s", pos->abbr_name);
- } else
- printed += fprintf(fp, "%s %d ", pos->name, num);
+ if (num == mask)
+ printed += fprintf(fp, "+");
+ } else {
+ printed += fprintf(fp, "%s %d%s", pos->name,
+ num, num == mask ? "+ " : " ");
+ }
}
if (numprinted == 0 && !verbose)
printed += fprintf(fp, "-");
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/2] perf/annotate: Fix missing branch counter column in TUI mode
2026-04-10 19:39 [PATCH 1/2] perf script: Add missed "+" if br_cntr reaches upper limit Thomas Falcon
@ 2026-04-10 19:40 ` Thomas Falcon
2026-04-10 20:19 ` [PATCH v2 " Thomas Falcon
2026-04-15 2:30 ` [PATCH " Mi, Dapeng
0 siblings, 2 replies; 4+ messages in thread
From: Thomas Falcon @ 2026-04-10 19:40 UTC (permalink / raw)
To: linux-perf-users
Cc: linux-kernel, Peter Zijlstra, Ingo Molnar,
Arnaldo Carvalho de Melo, Namhyung Kim, Mark Rutland,
Alexander Shishkin, Jiri Olsa, Ian Rogers, Adrian Hunter,
James Clark, Dapeng Mi
perf annotate checks that evlist->nr_br_cntr has been incremented
to determine whether to show branch counter information. However,
this data is not populated until after the check when events are
processed. Therefore, this counter will always be less than zero
and the Branch Count column is never shown. Do this check after
events have been processed and branch counter data is updated.
Signed-off-by: Thomas Falcon <thomas.falcon@intel.com>
---
tools/perf/builtin-annotate.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c
index 5e57b78548f4..7fe23b05306f 100644
--- a/tools/perf/builtin-annotate.c
+++ b/tools/perf/builtin-annotate.c
@@ -563,6 +563,9 @@ static int __cmd_annotate(struct perf_annotate *ann)
if (ret)
goto out;
+ if (session->evlist->nr_br_cntr > 0)
+ annotate_opts.show_br_cntr = true;
+
if (dump_trace) {
perf_session__fprintf_nr_events(session, stdout);
evlist__fprintf_nr_events(session->evlist, stdout);
@@ -928,8 +931,6 @@ int cmd_annotate(int argc, const char **argv)
*/
if ((use_browser == 1 || annotate.use_stdio2) && annotate.has_br_stack) {
sort__mode = SORT_MODE__BRANCH;
- if (annotate.session->evlist->nr_br_cntr > 0)
- annotate_opts.show_br_cntr = true;
}
if (setup_sorting(/*evlist=*/NULL, perf_session__env(annotate.session)) < 0)
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH v2 2/2] perf/annotate: Fix missing branch counter column in TUI mode
2026-04-10 19:40 ` [PATCH 2/2] perf/annotate: Fix missing branch counter column in TUI mode Thomas Falcon
@ 2026-04-10 20:19 ` Thomas Falcon
2026-04-15 2:30 ` [PATCH " Mi, Dapeng
1 sibling, 0 replies; 4+ messages in thread
From: Thomas Falcon @ 2026-04-10 20:19 UTC (permalink / raw)
To: linux-perf-users
Cc: linux-kernel, Peter Zijlstra, Ingo Molnar,
Arnaldo Carvalho de Melo, Namhyung Kim, Mark Rutland,
Alexander Shishkin, Jiri Olsa, Ian Rogers, Adrian Hunter,
James Clark, Dapeng Mi
perf annotate checks that evlist->nr_br_cntr has been incremented
to determine whether to show branch counter information. However,
this data is not populated until after the check when events are
processed. Therefore, this counter will always be less than zero
and the Branch Count column is never shown. Do this check after
events have been processed and branch counter data is updated.
Signed-off-by: Thomas Falcon <thomas.falcon@intel.com>
---
v2: Sent an older version by mistake, updated to the latest version.
---
tools/perf/builtin-annotate.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c
index 5e57b78548f4..7bddbaee1cde 100644
--- a/tools/perf/builtin-annotate.c
+++ b/tools/perf/builtin-annotate.c
@@ -563,6 +563,10 @@ static int __cmd_annotate(struct perf_annotate *ann)
if (ret)
goto out;
+ if ((use_browser == 1 || ann->use_stdio2) && ann->has_br_stack)
+ if (session->evlist->nr_br_cntr > 0)
+ annotate_opts.show_br_cntr = true;
+
if (dump_trace) {
perf_session__fprintf_nr_events(session, stdout);
evlist__fprintf_nr_events(session->evlist, stdout);
@@ -926,11 +930,8 @@ int cmd_annotate(int argc, const char **argv)
* branch counters, if the corresponding branch info is available
* in the perf data in the TUI mode.
*/
- if ((use_browser == 1 || annotate.use_stdio2) && annotate.has_br_stack) {
+ if ((use_browser == 1 || annotate.use_stdio2) && annotate.has_br_stack)
sort__mode = SORT_MODE__BRANCH;
- if (annotate.session->evlist->nr_br_cntr > 0)
- annotate_opts.show_br_cntr = true;
- }
if (setup_sorting(/*evlist=*/NULL, perf_session__env(annotate.session)) < 0)
usage_with_options(annotate_usage, options);
--
2.43.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 2/2] perf/annotate: Fix missing branch counter column in TUI mode
2026-04-10 19:40 ` [PATCH 2/2] perf/annotate: Fix missing branch counter column in TUI mode Thomas Falcon
2026-04-10 20:19 ` [PATCH v2 " Thomas Falcon
@ 2026-04-15 2:30 ` Mi, Dapeng
1 sibling, 0 replies; 4+ messages in thread
From: Mi, Dapeng @ 2026-04-15 2:30 UTC (permalink / raw)
To: Thomas Falcon, linux-perf-users
Cc: linux-kernel, Peter Zijlstra, Ingo Molnar,
Arnaldo Carvalho de Melo, Namhyung Kim, Mark Rutland,
Alexander Shishkin, Jiri Olsa, Ian Rogers, Adrian Hunter,
James Clark
On 4/11/2026 3:40 AM, Thomas Falcon wrote:
> perf annotate checks that evlist->nr_br_cntr has been incremented
> to determine whether to show branch counter information. However,
> this data is not populated until after the check when events are
> processed. Therefore, this counter will always be less than zero
> and the Branch Count column is never shown. Do this check after
> events have been processed and branch counter data is updated.
>
> Signed-off-by: Thomas Falcon <thomas.falcon@intel.com>
> ---
> tools/perf/builtin-annotate.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c
> index 5e57b78548f4..7fe23b05306f 100644
> --- a/tools/perf/builtin-annotate.c
> +++ b/tools/perf/builtin-annotate.c
> @@ -563,6 +563,9 @@ static int __cmd_annotate(struct perf_annotate *ann)
> if (ret)
> goto out;
>
> + if (session->evlist->nr_br_cntr > 0)
Do we need to check if annotate.has_br_stack is true before setting
show_br_cntr to true? Thanks.
> + annotate_opts.show_br_cntr = true;
> +
> if (dump_trace) {
> perf_session__fprintf_nr_events(session, stdout);
> evlist__fprintf_nr_events(session->evlist, stdout);
> @@ -928,8 +931,6 @@ int cmd_annotate(int argc, const char **argv)
> */
> if ((use_browser == 1 || annotate.use_stdio2) && annotate.has_br_stack) {
> sort__mode = SORT_MODE__BRANCH;
> - if (annotate.session->evlist->nr_br_cntr > 0)
> - annotate_opts.show_br_cntr = true;
> }
>
> if (setup_sorting(/*evlist=*/NULL, perf_session__env(annotate.session)) < 0)
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-04-15 2:30 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-10 19:39 [PATCH 1/2] perf script: Add missed "+" if br_cntr reaches upper limit Thomas Falcon
2026-04-10 19:40 ` [PATCH 2/2] perf/annotate: Fix missing branch counter column in TUI mode Thomas Falcon
2026-04-10 20:19 ` [PATCH v2 " Thomas Falcon
2026-04-15 2:30 ` [PATCH " Mi, Dapeng
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox