diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2010-01-07 16:59:39 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2010-01-13 04:09:16 -0500 |
commit | a89e5abe3efcc7facc666d3985769278937f86b0 (patch) | |
tree | 4aa271d7d1d751ff842bb23874fcb91b384343cc /tools/perf/util/symbol.h | |
parent | fed5af61dc0d9402d26e7fb8fb9731a60a8e05ca (diff) |
perf symbols: Record the domain of DSOs in HEADER_BUILD_ID header table
So that we can restore them to the right DSO list (either
dsos__kernel or dsos__user).
We do that just like the kernel does for the other events,
encoding PERF_RECORD_MISC_{KERNEL,USER} in perf_event_header.
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Frédéric Weisbecker <fweisbec@gmail.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
LKML-Reference: <1262901583-8074-2-git-send-email-acme@infradead.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'tools/perf/util/symbol.h')
-rw-r--r-- | tools/perf/util/symbol.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/tools/perf/util/symbol.h b/tools/perf/util/symbol.h index b2b5330a82a0..ee0b4593db7b 100644 --- a/tools/perf/util/symbol.h +++ b/tools/perf/util/symbol.h | |||
@@ -115,9 +115,17 @@ bool dso__sorted_by_name(const struct dso *self, enum map_type type); | |||
115 | 115 | ||
116 | void dso__sort_by_name(struct dso *self, enum map_type type); | 116 | void dso__sort_by_name(struct dso *self, enum map_type type); |
117 | 117 | ||
118 | extern struct list_head dsos__user, dsos__kernel; | ||
119 | |||
120 | struct dso *__dsos__findnew(struct list_head *head, const char *name); | ||
121 | |||
122 | static inline struct dso *dsos__findnew(const char *name) | ||
123 | { | ||
124 | return __dsos__findnew(&dsos__user, name); | ||
125 | } | ||
126 | |||
118 | struct perf_session; | 127 | struct perf_session; |
119 | 128 | ||
120 | struct dso *dsos__findnew(const char *name); | ||
121 | int dso__load(struct dso *self, struct map *map, struct perf_session *session, | 129 | int dso__load(struct dso *self, struct map *map, struct perf_session *session, |
122 | symbol_filter_t filter); | 130 | symbol_filter_t filter); |
123 | void dsos__fprintf(FILE *fp); | 131 | void dsos__fprintf(FILE *fp); |
@@ -143,6 +151,5 @@ bool symbol_type__is_a(char symbol_type, enum map_type map_type); | |||
143 | 151 | ||
144 | int perf_session__create_kernel_maps(struct perf_session *self); | 152 | int perf_session__create_kernel_maps(struct perf_session *self); |
145 | 153 | ||
146 | extern struct list_head dsos__user, dsos__kernel; | ||
147 | extern struct dso *vdso; | 154 | extern struct dso *vdso; |
148 | #endif /* __PERF_SYMBOL */ | 155 | #endif /* __PERF_SYMBOL */ |