diff options
| -rw-r--r-- | tools/perf/util/newt.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/tools/perf/util/newt.c b/tools/perf/util/newt.c index 0b45658f7497..c65838c99354 100644 --- a/tools/perf/util/newt.c +++ b/tools/perf/util/newt.c | |||
| @@ -914,6 +914,9 @@ int hists__browse(struct hists *self, const char *helpline, const char *input_na | |||
| 914 | 914 | ||
| 915 | switch (toupper(es.u.key)) { | 915 | switch (toupper(es.u.key)) { |
| 916 | case 'A': | 916 | case 'A': |
| 917 | if (browser->selection->map == NULL && | ||
| 918 | browser->selection->map->dso->annotate_warned) | ||
| 919 | continue; | ||
| 917 | goto do_annotate; | 920 | goto do_annotate; |
| 918 | case 'D': | 921 | case 'D': |
| 919 | goto zoom_dso; | 922 | goto zoom_dso; |
| @@ -957,6 +960,7 @@ do_help: | |||
| 957 | } | 960 | } |
| 958 | 961 | ||
| 959 | if (browser->selection->sym != NULL && | 962 | if (browser->selection->sym != NULL && |
| 963 | !browser->selection->map->dso->annotate_warned && | ||
| 960 | asprintf(&options[nr_options], "Annotate %s", | 964 | asprintf(&options[nr_options], "Annotate %s", |
| 961 | browser->selection->sym->name) > 0) | 965 | browser->selection->sym->name) > 0) |
| 962 | annotate = nr_options++; | 966 | annotate = nr_options++; |
| @@ -991,6 +995,7 @@ do_help: | |||
| 991 | struct hist_entry *he; | 995 | struct hist_entry *he; |
| 992 | do_annotate: | 996 | do_annotate: |
| 993 | if (browser->selection->map->dso->origin == DSO__ORIG_KERNEL) { | 997 | if (browser->selection->map->dso->origin == DSO__ORIG_KERNEL) { |
| 998 | browser->selection->map->dso->annotate_warned = 1; | ||
| 994 | ui_helpline__puts("No vmlinux file found, can't " | 999 | ui_helpline__puts("No vmlinux file found, can't " |
| 995 | "annotate with just a " | 1000 | "annotate with just a " |
| 996 | "kallsyms file"); | 1001 | "kallsyms file"); |
