summaryrefslogtreecommitdiffstats
path: root/tools/perf/util/newt.c
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2010-05-22 11:20:24 -0300
committerArnaldo Carvalho de Melo <acme@redhat.com>2010-05-22 11:20:24 -0300
commit6e78c9fd1bc2c7e04b3d7052e9eb27aa536e4e2c (patch)
treef1f17a81de35430dec2774985e8afb41fb3acecb /tools/perf/util/newt.c
parent0e8dc2597487848bb076d6b3d8440c85dde521e7 (diff)
downloadblackbird-op-linux-6e78c9fd1bc2c7e04b3d7052e9eb27aa536e4e2c.tar.gz
blackbird-op-linux-6e78c9fd1bc2c7e04b3d7052e9eb27aa536e4e2c.zip
perf tui: Remove annotate from popup menu after failure
Cc: Frédéric Weisbecker <fweisbec@gmail.com> Cc: Mike Galbraith <efault@gmx.de> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Stephane Eranian <eranian@google.com> Cc: Tom Zanussi <tzanussi@gmail.com> LKML-Reference: <new-submission> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/newt.c')
-rw-r--r--tools/perf/util/newt.c5
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
switch (toupper(es.u.key)) {
case 'A':
+ if (browser->selection->map == NULL &&
+ browser->selection->map->dso->annotate_warned)
+ continue;
goto do_annotate;
case 'D':
goto zoom_dso;
@@ -957,6 +960,7 @@ do_help:
}
if (browser->selection->sym != NULL &&
+ !browser->selection->map->dso->annotate_warned &&
asprintf(&options[nr_options], "Annotate %s",
browser->selection->sym->name) > 0)
annotate = nr_options++;
@@ -991,6 +995,7 @@ do_help:
struct hist_entry *he;
do_annotate:
if (browser->selection->map->dso->origin == DSO__ORIG_KERNEL) {
+ browser->selection->map->dso->annotate_warned = 1;
ui_helpline__puts("No vmlinux file found, can't "
"annotate with just a "
"kallsyms file");
OpenPOWER on IntegriCloud