aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/util/map.h
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2010-03-26 11:11:06 -0400
committerArnaldo Carvalho de Melo <acme@redhat.com>2010-04-02 15:27:39 -0400
commitc6e718ff8cdcf5e7855077687720b37c4a07650a (patch)
treed5cf4c9b8569fe4138daf7727af5aee7e1fd1cf0 /tools/perf/util/map.h
parent11164cd4f6dab326a88bdf27f2f8f7c11977e91a (diff)
perf symbols: Move more map_groups methods to map.c
While writing a standalone test app that uses the symbol system to find kernel space symbols I noticed these also need to be moved. 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> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/map.h')
-rw-r--r--tools/perf/util/map.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/tools/perf/util/map.h b/tools/perf/util/map.h
index 6a703fa74707..4e7a11da8ffe 100644
--- a/tools/perf/util/map.h
+++ b/tools/perf/util/map.h
@@ -97,11 +97,14 @@ struct map_groups {
97}; 97};
98 98
99size_t __map_groups__fprintf_maps(struct map_groups *self, 99size_t __map_groups__fprintf_maps(struct map_groups *self,
100 enum map_type type, FILE *fp); 100 enum map_type type, int verbose, FILE *fp);
101void maps__insert(struct rb_root *maps, struct map *map); 101void maps__insert(struct rb_root *maps, struct map *map);
102struct map *maps__find(struct rb_root *maps, u64 addr); 102struct map *maps__find(struct rb_root *maps, u64 addr);
103void map_groups__init(struct map_groups *self); 103void map_groups__init(struct map_groups *self);
104size_t map_groups__fprintf_maps(struct map_groups *self, FILE *fp); 104int map_groups__clone(struct map_groups *self,
105 struct map_groups *parent, enum map_type type);
106size_t map_groups__fprintf(struct map_groups *self, int verbose, FILE *fp);
107size_t map_groups__fprintf_maps(struct map_groups *self, int verbose, FILE *fp);
105 108
106static inline void map_groups__insert(struct map_groups *self, struct map *map) 109static inline void map_groups__insert(struct map_groups *self, struct map *map)
107{ 110{
@@ -125,6 +128,9 @@ static inline struct symbol *map_groups__find_function(struct map_groups *self,
125 return map_groups__find_symbol(self, MAP__FUNCTION, addr, filter); 128 return map_groups__find_symbol(self, MAP__FUNCTION, addr, filter);
126} 129}
127 130
131int map_groups__fixup_overlappings(struct map_groups *self, struct map *map,
132 int verbose, FILE *fp);
133
128struct map *map_groups__find_by_name(struct map_groups *self, 134struct map *map_groups__find_by_name(struct map_groups *self,
129 enum map_type type, const char *name); 135 enum map_type type, const char *name);
130int __map_groups__create_kernel_maps(struct map_groups *self, 136int __map_groups__create_kernel_maps(struct map_groups *self,
@@ -134,5 +140,6 @@ int map_groups__create_kernel_maps(struct map_groups *self,
134 struct map *vmlinux_maps[MAP__NR_TYPES]); 140 struct map *vmlinux_maps[MAP__NR_TYPES]);
135struct map *map_groups__new_module(struct map_groups *self, u64 start, 141struct map *map_groups__new_module(struct map_groups *self, u64 start,
136 const char *filename); 142 const char *filename);
143void map_groups__flush(struct map_groups *self);
137 144
138#endif /* __PERF_MAP_H */ 145#endif /* __PERF_MAP_H */