• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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, or the definition of
7  * trace_print_flags{_u64}. Otherwise linux/tracepoint.h should be used.
8  */
9 
10 #include <linux/atomic.h>
11 #include <linux/static_key.h>
12 
13 struct trace_print_flags {
14 	unsigned long		mask;
15 	const char		*name;
16 };
17 
18 struct trace_print_flags_u64 {
19 	unsigned long long	mask;
20 	const char		*name;
21 };
22 
23 struct tracepoint_func {
24 	void *func;
25 	void *data;
26 	int prio;
27 };
28 
29 struct tracepoint {
30 	const char *name;		/* Tracepoint name */
31 	struct static_key key;
32 	void (*regfunc)(void);
33 	void (*unregfunc)(void);
34 	struct tracepoint_func __rcu *funcs;
35 };
36 
37 #endif
38