.. | .. |
---|
4 | 4 | |
---|
5 | 5 | #include <linux/compiler.h> |
---|
6 | 6 | #include <stdbool.h> |
---|
7 | | -#include "intlist.h" |
---|
8 | | -#include "namespaces.h" |
---|
| 7 | + |
---|
| 8 | +struct intlist; |
---|
| 9 | +struct nsinfo; |
---|
9 | 10 | |
---|
10 | 11 | /* Probe related configurations */ |
---|
11 | 12 | struct probe_conf { |
---|
.. | .. |
---|
15 | 16 | bool no_inlines; |
---|
16 | 17 | bool cache; |
---|
17 | 18 | int max_probes; |
---|
| 19 | + unsigned long magic_num; |
---|
18 | 20 | }; |
---|
19 | 21 | extern struct probe_conf probe_conf; |
---|
20 | 22 | extern bool probe_event_dry_run; |
---|
| 23 | + |
---|
| 24 | +#define DEFAULT_PROBE_MAGIC_NUM 0xdeade12d /* u32: 3735937325 */ |
---|
21 | 25 | |
---|
22 | 26 | struct symbol; |
---|
23 | 27 | |
---|
.. | .. |
---|
27 | 31 | char *symbol; /* Base symbol */ |
---|
28 | 32 | char *module; /* Module name */ |
---|
29 | 33 | unsigned long offset; /* Offset from symbol */ |
---|
| 34 | + unsigned long ref_ctr_offset; /* SDT reference counter offset */ |
---|
30 | 35 | unsigned long address; /* Actual address of the trace point */ |
---|
31 | 36 | bool retprobe; /* Return probe flag */ |
---|
32 | 37 | }; |
---|
.. | .. |
---|
35 | 40 | struct probe_trace_arg_ref { |
---|
36 | 41 | struct probe_trace_arg_ref *next; /* Next reference */ |
---|
37 | 42 | long offset; /* Offset value */ |
---|
| 43 | + bool user_access; /* User-memory access */ |
---|
38 | 44 | }; |
---|
39 | 45 | |
---|
40 | 46 | /* kprobe-tracer and uprobe-tracer tracing argument */ |
---|
.. | .. |
---|
80 | 86 | char *var; /* Variable name */ |
---|
81 | 87 | char *type; /* Type name */ |
---|
82 | 88 | struct perf_probe_arg_field *field; /* Structure fields */ |
---|
| 89 | + bool user_access; /* User-memory access */ |
---|
83 | 90 | }; |
---|
84 | 91 | |
---|
85 | 92 | /* Perf probe probing event (point + arg) */ |
---|