Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 199439
b: refs/heads/master
c: 92af1ab
h: refs/heads/master
i:
  199437: 606efaa
  199435: bd46d66
  199431: da7334c
  199423: d047568
v: v3
  • Loading branch information
Ingo Molnar committed May 29, 2010
1 parent e9660c8 commit 3ecbae1
Show file tree
Hide file tree
Showing 7 changed files with 29 additions and 9 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 2711ca237a084286ea1c2dcf82ab2aadab23a00d
refs/heads/master: 92af1abde4f2d74c9e5f7b670a1971779ed0b051
2 changes: 1 addition & 1 deletion trunk/tools/perf/builtin-annotate.c
Original file line number Diff line number Diff line change
Expand Up @@ -343,7 +343,7 @@ static void hists__find_annotations(struct hists *self)
continue;
}

if (use_browser) {
if (use_browser > 0) {
key = hist_entry__tui_annotate(he);
if (is_exit_key(key))
break;
Expand Down
2 changes: 1 addition & 1 deletion trunk/tools/perf/builtin-top.c
Original file line number Diff line number Diff line change
Expand Up @@ -1060,7 +1060,7 @@ static void event__process_sample(const event_t *self,
pr_err("Can't annotate %s", sym->name);
if (sym_filter_entry->map->dso->origin == DSO__ORIG_KERNEL) {
pr_err(": No vmlinux file was found in the path:\n");
vmlinux_path__fprintf(stderr);
machine__fprintf_vmlinux_path(machine, stderr);
} else
pr_err(".\n");
exit(1);
Expand Down
2 changes: 1 addition & 1 deletion trunk/tools/perf/util/debug.c
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ int eprintf(int level, const char *fmt, ...)

if (verbose >= level) {
va_start(args, fmt);
if (use_browser)
if (use_browser > 0)
ret = browser__show_help(fmt, args);
else
ret = vfprintf(stderr, fmt, args);
Expand Down
1 change: 1 addition & 0 deletions trunk/tools/perf/util/newt.c
Original file line number Diff line number Diff line change
Expand Up @@ -1139,6 +1139,7 @@ void setup_browser(void)
struct newtPercentTreeColors *c = &defaultPercentTreeColors;

if (!isatty(1) || !use_browser || dump_trace) {
use_browser = 0;
setup_pager();
return;
}
Expand Down
27 changes: 23 additions & 4 deletions trunk/tools/perf/util/symbol.c
Original file line number Diff line number Diff line change
Expand Up @@ -1695,9 +1695,20 @@ int dso__load_vmlinux_path(struct dso *self, struct map *map,
symbol_filter_t filter)
{
int i, err = 0;
char *filename;

pr_debug("Looking at the vmlinux_path (%d entries long)\n",
vmlinux_path__nr_entries);
vmlinux_path__nr_entries + 1);

filename = dso__build_id_filename(self, NULL, 0);
if (filename != NULL) {
err = dso__load_vmlinux(self, map, filename, filter);
if (err > 0) {
dso__set_long_name(self, filename);
goto out;
}
free(filename);
}

for (i = 0; i < vmlinux_path__nr_entries; ++i) {
err = dso__load_vmlinux(self, map, vmlinux_path[i], filter);
Expand All @@ -1706,7 +1717,7 @@ int dso__load_vmlinux_path(struct dso *self, struct map *map,
break;
}
}

out:
return err;
}

Expand Down Expand Up @@ -2102,13 +2113,21 @@ static int vmlinux_path__init(void)
return -1;
}

size_t vmlinux_path__fprintf(FILE *fp)
size_t machine__fprintf_vmlinux_path(struct machine *self, FILE *fp)
{
int i;
size_t printed = 0;
struct dso *kdso = self->vmlinux_maps[MAP__FUNCTION]->dso;

if (kdso->has_build_id) {
char filename[PATH_MAX];
if (dso__build_id_filename(kdso, filename, sizeof(filename)))
printed += fprintf(fp, "[0] %s\n", filename);
}

for (i = 0; i < vmlinux_path__nr_entries; ++i)
printed += fprintf(fp, "[%d] %s\n", i, vmlinux_path[i]);
printed += fprintf(fp, "[%d] %s\n",
i + kdso->has_build_id, vmlinux_path[i]);

return printed;
}
Expand Down
2 changes: 1 addition & 1 deletion trunk/tools/perf/util/symbol.h
Original file line number Diff line number Diff line change
Expand Up @@ -216,6 +216,6 @@ int machines__create_guest_kernel_maps(struct rb_root *self);
int symbol__init(void);
bool symbol_type__is_a(char symbol_type, enum map_type map_type);

size_t vmlinux_path__fprintf(FILE *fp);
size_t machine__fprintf_vmlinux_path(struct machine *self, FILE *fp);

#endif /* __PERF_SYMBOL */

0 comments on commit 3ecbae1

Please sign in to comment.