linux-perf-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] perf annotate: Fix build with NO_SLANG=1
@ 2025-10-21  3:07 Namhyung Kim
  2025-10-21  4:45 ` Li, Tianyou
  2025-10-22  0:39 ` Namhyung Kim
  0 siblings, 2 replies; 3+ messages in thread
From: Namhyung Kim @ 2025-10-21  3:07 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo, Ian Rogers
  Cc: Jiri Olsa, Adrian Hunter, Peter Zijlstra, Ingo Molnar, LKML,
	linux-perf-users, James Clark, Tianyou Li

The recent change for perf c2c annotate broke build without slang
support like below.

  builtin-annotate.c: In function 'hists__find_annotations':
  builtin-annotate.c:522:73: error: 'NO_ADDR' undeclared (first use in this function); did you mean 'NR_ADDR'?
    522 |                         key = hist_entry__tui_annotate(he, evsel, NULL, NO_ADDR);
        |                                                                         ^~~~~~~
        |                                                                         NR_ADDR
  builtin-annotate.c:522:73: note: each undeclared identifier is reported only once for each function it appears in

  builtin-annotate.c:522:31: error: too many arguments to function 'hist_entry__tui_annotate'
    522 |                         key = hist_entry__tui_annotate(he, evsel, NULL, NO_ADDR);
        |                               ^~~~~~~~~~~~~~~~~~~~~~~~
  In file included from util/sort.h:6,
                   from builtin-annotate.c:28:
  util/hist.h:756:19: note: declared here
    756 | static inline int hist_entry__tui_annotate(struct hist_entry *he __maybe_unused,
        |                   ^~~~~~~~~~~~~~~~~~~~~~~~

And I noticed that it missed to update the other side of #ifdef
HAVE_SLANG_SUPPORT.  Let's fix it.

Fixes: cd3466cd2639783d ("perf c2c: Add annotation support to perf c2c report")
Cc: Tianyou Li <tianyou.li@intel.com>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
---
 tools/perf/util/hist.h | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/tools/perf/util/hist.h b/tools/perf/util/hist.h
index 6795816eee856e8f..1d5ea632ca4e1b0b 100644
--- a/tools/perf/util/hist.h
+++ b/tools/perf/util/hist.h
@@ -709,12 +709,12 @@ struct block_hist {
 	struct hist_entry	he;
 };
 
+#define NO_ADDR 0
+
 #ifdef HAVE_SLANG_SUPPORT
 #include "../ui/keysyms.h"
 void attr_to_script(char *buf, struct perf_event_attr *attr);
 
-#define NO_ADDR 0
-
 int __hist_entry__tui_annotate(struct hist_entry *he, struct map_symbol *ms,
 			       struct evsel *evsel,
 			       struct hist_browser_timer *hbt, u64 al_addr);
@@ -748,14 +748,16 @@ int evlist__tui_browse_hists(struct evlist *evlist __maybe_unused,
 static inline int __hist_entry__tui_annotate(struct hist_entry *he __maybe_unused,
 					     struct map_symbol *ms __maybe_unused,
 					     struct evsel *evsel __maybe_unused,
-					     struct hist_browser_timer *hbt __maybe_unused)
+					     struct hist_browser_timer *hbt __maybe_unused,
+					     u64 al_addr __maybe_unused)
 {
 	return 0;
 }
 
 static inline int hist_entry__tui_annotate(struct hist_entry *he __maybe_unused,
 					   struct evsel *evsel __maybe_unused,
-					   struct hist_browser_timer *hbt __maybe_unused)
+					   struct hist_browser_timer *hbt __maybe_unused,
+					   u64 al_addr __maybe_unused)
 {
 	return 0;
 }
-- 
2.51.0.869.ge66316f041-goog


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] perf annotate: Fix build with NO_SLANG=1
  2025-10-21  3:07 [PATCH] perf annotate: Fix build with NO_SLANG=1 Namhyung Kim
@ 2025-10-21  4:45 ` Li, Tianyou
  2025-10-22  0:39 ` Namhyung Kim
  1 sibling, 0 replies; 3+ messages in thread
From: Li, Tianyou @ 2025-10-21  4:45 UTC (permalink / raw)
  To: Namhyung Kim, Arnaldo Carvalho de Melo, Ian Rogers
  Cc: Jiri Olsa, Adrian Hunter, Peter Zijlstra, Ingo Molnar, LKML,
	linux-perf-users, James Clark

Hi Namhyung,

My bad. Thanks for taking time to fix this. I've tested with my ICX box 
with and without the patch. I can confirm the issue reproduced and fixed 
by your patch, tested through 'make NO_SLANG=1'. Sorry about the 
inconvenience. Thanks.

Regards,

Tianyou


On 10/21/2025 11:07 AM, Namhyung Kim wrote:
> The recent change for perf c2c annotate broke build without slang
> support like below.
>
>    builtin-annotate.c: In function 'hists__find_annotations':
>    builtin-annotate.c:522:73: error: 'NO_ADDR' undeclared (first use in this function); did you mean 'NR_ADDR'?
>      522 |                         key = hist_entry__tui_annotate(he, evsel, NULL, NO_ADDR);
>          |                                                                         ^~~~~~~
>          |                                                                         NR_ADDR
>    builtin-annotate.c:522:73: note: each undeclared identifier is reported only once for each function it appears in
>
>    builtin-annotate.c:522:31: error: too many arguments to function 'hist_entry__tui_annotate'
>      522 |                         key = hist_entry__tui_annotate(he, evsel, NULL, NO_ADDR);
>          |                               ^~~~~~~~~~~~~~~~~~~~~~~~
>    In file included from util/sort.h:6,
>                     from builtin-annotate.c:28:
>    util/hist.h:756:19: note: declared here
>      756 | static inline int hist_entry__tui_annotate(struct hist_entry *he __maybe_unused,
>          |                   ^~~~~~~~~~~~~~~~~~~~~~~~
>
> And I noticed that it missed to update the other side of #ifdef
> HAVE_SLANG_SUPPORT.  Let's fix it.
>
> Fixes: cd3466cd2639783d ("perf c2c: Add annotation support to perf c2c report")
> Cc: Tianyou Li <tianyou.li@intel.com>
> Signed-off-by: Namhyung Kim <namhyung@kernel.org>
> ---
>   tools/perf/util/hist.h | 10 ++++++----
>   1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/tools/perf/util/hist.h b/tools/perf/util/hist.h
> index 6795816eee856e8f..1d5ea632ca4e1b0b 100644
> --- a/tools/perf/util/hist.h
> +++ b/tools/perf/util/hist.h
> @@ -709,12 +709,12 @@ struct block_hist {
>   	struct hist_entry	he;
>   };
>   
> +#define NO_ADDR 0
> +
>   #ifdef HAVE_SLANG_SUPPORT
>   #include "../ui/keysyms.h"
>   void attr_to_script(char *buf, struct perf_event_attr *attr);
>   
> -#define NO_ADDR 0
> -
>   int __hist_entry__tui_annotate(struct hist_entry *he, struct map_symbol *ms,
>   			       struct evsel *evsel,
>   			       struct hist_browser_timer *hbt, u64 al_addr);
> @@ -748,14 +748,16 @@ int evlist__tui_browse_hists(struct evlist *evlist __maybe_unused,
>   static inline int __hist_entry__tui_annotate(struct hist_entry *he __maybe_unused,
>   					     struct map_symbol *ms __maybe_unused,
>   					     struct evsel *evsel __maybe_unused,
> -					     struct hist_browser_timer *hbt __maybe_unused)
> +					     struct hist_browser_timer *hbt __maybe_unused,
> +					     u64 al_addr __maybe_unused)
>   {
>   	return 0;
>   }
>   
>   static inline int hist_entry__tui_annotate(struct hist_entry *he __maybe_unused,
>   					   struct evsel *evsel __maybe_unused,
> -					   struct hist_browser_timer *hbt __maybe_unused)
> +					   struct hist_browser_timer *hbt __maybe_unused,
> +					   u64 al_addr __maybe_unused)
>   {
>   	return 0;
>   }

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] perf annotate: Fix build with NO_SLANG=1
  2025-10-21  3:07 [PATCH] perf annotate: Fix build with NO_SLANG=1 Namhyung Kim
  2025-10-21  4:45 ` Li, Tianyou
@ 2025-10-22  0:39 ` Namhyung Kim
  1 sibling, 0 replies; 3+ messages in thread
From: Namhyung Kim @ 2025-10-22  0:39 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo, Ian Rogers, Namhyung Kim
  Cc: Jiri Olsa, Adrian Hunter, Peter Zijlstra, Ingo Molnar, LKML,
	linux-perf-users, James Clark, Tianyou Li

On Tue, 21 Oct 2025 12:07:50 +0900, Namhyung Kim wrote:
> The recent change for perf c2c annotate broke build without slang
> support like below.
> 
>   builtin-annotate.c: In function 'hists__find_annotations':
>   builtin-annotate.c:522:73: error: 'NO_ADDR' undeclared (first use in this function); did you mean 'NR_ADDR'?
>     522 |                         key = hist_entry__tui_annotate(he, evsel, NULL, NO_ADDR);
>         |                                                                         ^~~~~~~
>         |                                                                         NR_ADDR
>   builtin-annotate.c:522:73: note: each undeclared identifier is reported only once for each function it appears in
> 
> [...]
Applied to perf-tools-next, thanks!

Best regards,
Namhyung



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-10-22  0:39 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-21  3:07 [PATCH] perf annotate: Fix build with NO_SLANG=1 Namhyung Kim
2025-10-21  4:45 ` Li, Tianyou
2025-10-22  0:39 ` Namhyung Kim

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).