]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blob - tools/perf/util/unwind.h
perf tools: Use zfree to help detect use after free bugs
[mirror_ubuntu-zesty-kernel.git] / tools / perf / util / unwind.h
1 #ifndef __UNWIND_H
2 #define __UNWIND_H
3
4 #include "types.h"
5 #include "event.h"
6 #include "symbol.h"
7
8 struct unwind_entry {
9 struct map *map;
10 struct symbol *sym;
11 u64 ip;
12 };
13
14 typedef int (*unwind_entry_cb_t)(struct unwind_entry *entry, void *arg);
15
16 #ifdef HAVE_LIBUNWIND_SUPPORT
17 int unwind__get_entries(unwind_entry_cb_t cb, void *arg,
18 struct machine *machine,
19 struct thread *thread,
20 u64 sample_uregs,
21 struct perf_sample *data, int max_stack);
22 int unwind__arch_reg_id(int regnum);
23 #else
24 static inline int
25 unwind__get_entries(unwind_entry_cb_t cb __maybe_unused,
26 void *arg __maybe_unused,
27 struct machine *machine __maybe_unused,
28 struct thread *thread __maybe_unused,
29 u64 sample_uregs __maybe_unused,
30 struct perf_sample *data __maybe_unused,
31 int max_stack __maybe_unused)
32 {
33 return 0;
34 }
35 #endif /* HAVE_LIBUNWIND_SUPPORT */
36 #endif /* __UNWIND_H */