1 #ifndef TRACEPOINT_DEFS_H
2 #define TRACEPOINT_DEFS_H 1
3 
4 /*
5  * File can be included directly by headers who only want to access
6  * tracepoint->key to guard out of line trace calls. Otherwise
7  * linux/tracepoint.h should be used.
8  */
9 
10 #include <linux/atomic.h>
11 #include <linux/static_key.h>
12 
13 struct tracepoint_func {
14 	void *func;
15 	void *data;
16 	int prio;
17 };
18 
19 struct tracepoint {
20 	const char *name;		/* Tracepoint name */
21 	struct static_key key;
22 	void (*regfunc)(void);
23 	void (*unregfunc)(void);
24 	struct tracepoint_func __rcu *funcs;
25 };
26 
27 #endif
28