On 16. 12. 25, 12:09, Greg Kroah-Hartman wrote:
6.18-stable review patch. If anyone has any objections, please let me know.
From: Namhyung Kim namhyung@kernel.org
[ Upstream commit 0e6c07a3c30cdc4509fc5e7dc490d4cc6e5c241a ]
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.
Cc: Tianyou Li tianyou.li@intel.com Fixes: cd3466cd2639783d ("perf c2c: Add annotation support to perf c2c report")
That fixes line ^^^ appears to be wrong, as now I see: builtin-annotate.c: In function ‘hists__find_annotations’: builtin-annotate.c:522:10: error: too few arguments to function ‘hist_entry__tui_annotate’ key = hist_entry__tui_annotate(he, evsel, NULL); ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from util/sort.h:6:0, from builtin-annotate.c:28: util/hist.h:757:19: note: declared here static inline int hist_entry__tui_annotate(struct hist_entry *he __maybe_unused, ^~~~~~~~~~~~~~~~~~~~~~~~
Because in util/hist.h, we now have: int hist_entry__tui_annotate(struct hist_entry *he, struct evsel *evsel, struct hist_browser_timer *hbt); ... 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, u64 al_addr __maybe_unused) { return 0; }
Was it meant to be Fixes: ad83f3b7155d perf c2c annotate: Start from the contention line ?
Signed-off-by: Namhyung Kim namhyung@kernel.org Signed-off-by: Sasha Levin sashal@kernel.org
tools/perf/util/hist.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/tools/perf/util/hist.h b/tools/perf/util/hist.h index c64005278687c..a4f244a046866 100644 --- a/tools/perf/util/hist.h +++ b/tools/perf/util/hist.h @@ -709,6 +709,8 @@ 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);
@@ -746,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, { return 0; }u64 al_addr __maybe_unused)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, { return 0; }u64 al_addr __maybe_unused)