1 #ifndef __PERF_RECORD_H
2 #define __PERF_RECORD_H
6 #include <linux/list.h>
15 * PERF_SAMPLE_IP | PERF_SAMPLE_TID | *
18 struct perf_event_header header;
21 unsigned char __more_data[];
25 struct perf_event_header header;
30 char filename[PATH_MAX];
34 struct perf_event_header header;
40 struct perf_event_header header;
47 struct perf_event_header header;
53 * PERF_FORMAT_ENABLED | PERF_FORMAT_RUNNING | PERF_FORMAT_ID
56 struct perf_event_header header;
65 struct perf_event_header header;
70 typedef union event_union {
71 struct perf_event_header header;
73 struct mmap_event mmap;
74 struct comm_event comm;
75 struct fork_event fork;
76 struct lost_event lost;
77 struct read_event read;
78 struct sample_event sample;
82 struct list_head node;
86 u64 (*map_ip)(struct map *, u64);
90 static inline u64 map__map_ip(struct map *map, u64 ip)
92 return ip - map->start + map->pgoff;
95 static inline u64 vdso__map_ip(struct map *map __used, u64 ip)
100 struct map *map__new(struct mmap_event *event, char *cwd, int cwdlen);
101 struct map *map__clone(struct map *self);
102 int map__overlap(struct map *l, struct map *r);
103 size_t map__fprintf(struct map *self, FILE *fp);
105 #endif /* __PERF_RECORD_H */