diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-06 12:30:52 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-06 12:30:52 -0400 |
commit | 4aed2fd8e3181fea7c09ba79cf64e7e3f4413bf9 (patch) | |
tree | 1f69733e5daab4915a76a41de0e4d1dc61e12cfb /tools/perf/util/symbol.h | |
parent | 3a3527b6461b1298cc53ce72f336346739297ac8 (diff) | |
parent | fc9ea5a1e53ee54f681e226d735008e2a6f8f470 (diff) |
Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (162 commits)
tracing/kprobes: unregister_trace_probe needs to be called under mutex
perf: expose event__process function
perf events: Fix mmap offset determination
perf, powerpc: fsl_emb: Restore setting perf_sample_data.period
perf, powerpc: Convert the FSL driver to use local64_t
perf tools: Don't keep unreferenced maps when unmaps are detected
perf session: Invalidate last_match when removing threads from rb_tree
perf session: Free the ref_reloc_sym memory at the right place
x86,mmiotrace: Add support for tracing STOS instruction
perf, sched migration: Librarize task states and event headers helpers
perf, sched migration: Librarize the GUI class
perf, sched migration: Make the GUI class client agnostic
perf, sched migration: Make it vertically scrollable
perf, sched migration: Parameterize cpu height and spacing
perf, sched migration: Fix key bindings
perf, sched migration: Ignore unhandled task states
perf, sched migration: Handle ignored migrate out events
perf: New migration tool overview
tracing: Drop cpparg() macro
perf: Use tracepoint_synchronize_unregister() to flush any pending tracepoint call
...
Fix up trivial conflicts in Makefile and drivers/cpufreq/cpufreq.c
Diffstat (limited to 'tools/perf/util/symbol.h')
-rw-r--r-- | tools/perf/util/symbol.h | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/tools/perf/util/symbol.h b/tools/perf/util/symbol.h index 5e02d2c17154..906be20011d9 100644 --- a/tools/perf/util/symbol.h +++ b/tools/perf/util/symbol.h | |||
@@ -9,8 +9,6 @@ | |||
9 | #include <linux/rbtree.h> | 9 | #include <linux/rbtree.h> |
10 | #include <stdio.h> | 10 | #include <stdio.h> |
11 | 11 | ||
12 | #define DEBUG_CACHE_DIR ".debug" | ||
13 | |||
14 | #ifdef HAVE_CPLUS_DEMANGLE | 12 | #ifdef HAVE_CPLUS_DEMANGLE |
15 | extern char *cplus_demangle(const char *, int); | 13 | extern char *cplus_demangle(const char *, int); |
16 | 14 | ||
@@ -70,9 +68,9 @@ struct symbol_conf { | |||
70 | show_nr_samples, | 68 | show_nr_samples, |
71 | use_callchain, | 69 | use_callchain, |
72 | exclude_other, | 70 | exclude_other, |
73 | full_paths, | ||
74 | show_cpu_utilization; | 71 | show_cpu_utilization; |
75 | const char *vmlinux_name, | 72 | const char *vmlinux_name, |
73 | *source_prefix, | ||
76 | *field_sep; | 74 | *field_sep; |
77 | const char *default_guest_vmlinux_name, | 75 | const char *default_guest_vmlinux_name, |
78 | *default_guest_kallsyms, | 76 | *default_guest_kallsyms, |
@@ -103,6 +101,8 @@ struct ref_reloc_sym { | |||
103 | struct map_symbol { | 101 | struct map_symbol { |
104 | struct map *map; | 102 | struct map *map; |
105 | struct symbol *sym; | 103 | struct symbol *sym; |
104 | bool unfolded; | ||
105 | bool has_children; | ||
106 | }; | 106 | }; |
107 | 107 | ||
108 | struct addr_location { | 108 | struct addr_location { |
@@ -112,7 +112,8 @@ struct addr_location { | |||
112 | u64 addr; | 112 | u64 addr; |
113 | char level; | 113 | char level; |
114 | bool filtered; | 114 | bool filtered; |
115 | unsigned int cpumode; | 115 | u8 cpumode; |
116 | s32 cpu; | ||
116 | }; | 117 | }; |
117 | 118 | ||
118 | enum dso_kernel_type { | 119 | enum dso_kernel_type { |
@@ -125,12 +126,14 @@ struct dso { | |||
125 | struct list_head node; | 126 | struct list_head node; |
126 | struct rb_root symbols[MAP__NR_TYPES]; | 127 | struct rb_root symbols[MAP__NR_TYPES]; |
127 | struct rb_root symbol_names[MAP__NR_TYPES]; | 128 | struct rb_root symbol_names[MAP__NR_TYPES]; |
129 | enum dso_kernel_type kernel; | ||
128 | u8 adjust_symbols:1; | 130 | u8 adjust_symbols:1; |
129 | u8 slen_calculated:1; | 131 | u8 slen_calculated:1; |
130 | u8 has_build_id:1; | 132 | u8 has_build_id:1; |
131 | enum dso_kernel_type kernel; | ||
132 | u8 hit:1; | 133 | u8 hit:1; |
133 | u8 annotate_warned:1; | 134 | u8 annotate_warned:1; |
135 | u8 sname_alloc:1; | ||
136 | u8 lname_alloc:1; | ||
134 | unsigned char origin; | 137 | unsigned char origin; |
135 | u8 sorted_by_name; | 138 | u8 sorted_by_name; |
136 | u8 loaded; | 139 | u8 loaded; |
@@ -146,6 +149,8 @@ struct dso *dso__new(const char *name); | |||
146 | struct dso *dso__new_kernel(const char *name); | 149 | struct dso *dso__new_kernel(const char *name); |
147 | void dso__delete(struct dso *self); | 150 | void dso__delete(struct dso *self); |
148 | 151 | ||
152 | int dso__name_len(const struct dso *self); | ||
153 | |||
149 | bool dso__loaded(const struct dso *self, enum map_type type); | 154 | bool dso__loaded(const struct dso *self, enum map_type type); |
150 | bool dso__sorted_by_name(const struct dso *self, enum map_type type); | 155 | bool dso__sorted_by_name(const struct dso *self, enum map_type type); |
151 | 156 | ||
@@ -207,13 +212,16 @@ int kallsyms__parse(const char *filename, void *arg, | |||
207 | int (*process_symbol)(void *arg, const char *name, | 212 | int (*process_symbol)(void *arg, const char *name, |
208 | char type, u64 start)); | 213 | char type, u64 start)); |
209 | 214 | ||
215 | void machine__destroy_kernel_maps(struct machine *self); | ||
210 | int __machine__create_kernel_maps(struct machine *self, struct dso *kernel); | 216 | int __machine__create_kernel_maps(struct machine *self, struct dso *kernel); |
211 | int machine__create_kernel_maps(struct machine *self); | 217 | int machine__create_kernel_maps(struct machine *self); |
212 | 218 | ||
213 | int machines__create_kernel_maps(struct rb_root *self, pid_t pid); | 219 | int machines__create_kernel_maps(struct rb_root *self, pid_t pid); |
214 | int machines__create_guest_kernel_maps(struct rb_root *self); | 220 | int machines__create_guest_kernel_maps(struct rb_root *self); |
221 | void machines__destroy_guest_kernel_maps(struct rb_root *self); | ||
215 | 222 | ||
216 | int symbol__init(void); | 223 | int symbol__init(void); |
224 | void symbol__exit(void); | ||
217 | bool symbol_type__is_a(char symbol_type, enum map_type map_type); | 225 | bool symbol_type__is_a(char symbol_type, enum map_type map_type); |
218 | 226 | ||
219 | size_t machine__fprintf_vmlinux_path(struct machine *self, FILE *fp); | 227 | size_t machine__fprintf_vmlinux_path(struct machine *self, FILE *fp); |