summaryrefslogtreecommitdiff
path: root/tools/perf/util/map.h
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2010-03-26 12:11:06 -0300
committerArnaldo Carvalho de Melo <acme@redhat.com>2010-04-02 16:27:39 -0300
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 {
};
size_t __map_groups__fprintf_maps(struct map_groups *self,
- enum map_type type, FILE *fp);
+ enum map_type type, int verbose, FILE *fp);
void maps__insert(struct rb_root *maps, struct map *map);
struct map *maps__find(struct rb_root *maps, u64 addr);
void map_groups__init(struct map_groups *self);
-size_t map_groups__fprintf_maps(struct map_groups *self, FILE *fp);
+int map_groups__clone(struct map_groups *self,
+ struct map_groups *parent, enum map_type type);
+size_t map_groups__fprintf(struct map_groups *self, int verbose, FILE *fp);
+size_t map_groups__fprintf_maps(struct map_groups *self, int verbose, FILE *fp);
static inline void map_groups__insert(struct map_groups *self, struct map *map)
{
@@ -125,6 +128,9 @@ static inline struct symbol *map_groups__find_function(struct map_groups *self,
return map_groups__find_symbol(self, MAP__FUNCTION, addr, filter);
}
+int map_groups__fixup_overlappings(struct map_groups *self, struct map *map,
+ int verbose, FILE *fp);
+
struct map *map_groups__find_by_name(struct map_groups *self,
enum map_type type, const char *name);
int __map_groups__create_kernel_maps(struct map_groups *self,
@@ -134,5 +140,6 @@ int map_groups__create_kernel_maps(struct map_groups *self,
struct map *vmlinux_maps[MAP__NR_TYPES]);
struct map *map_groups__new_module(struct map_groups *self, u64 start,
const char *filename);
+void map_groups__flush(struct map_groups *self);
#endif /* __PERF_MAP_H */