Linux Audio

Check our new training course

Loading...
Note: File does not exist in v5.4.
 1#ifndef __PERF_FTRACE_H__
 2#define __PERF_FTRACE_H__
 3
 4#include <linux/list.h>
 5
 6#include "target.h"
 7
 8struct evlist;
 9struct hashamp;
10
11struct perf_ftrace {
12	struct evlist		*evlist;
13	struct target		target;
14	const char		*tracer;
15	struct list_head	filters;
16	struct list_head	notrace;
17	struct list_head	graph_funcs;
18	struct list_head	nograph_funcs;
19	struct hashmap		*profile_hash;
20	unsigned long		percpu_buffer_size;
21	bool			inherit;
22	bool			use_nsec;
23	int			graph_depth;
24	int			func_stack_trace;
25	int			func_irq_info;
26	int			graph_nosleep_time;
27	int			graph_noirqs;
28	int			graph_verbose;
29	int			graph_thresh;
30	int			graph_tail;
31};
32
33struct filter_entry {
34	struct list_head	list;
35	char			name[];
36};
37
38#define NUM_BUCKET  22  /* 20 + 2 (for outliers in both direction) */
39
40#ifdef HAVE_BPF_SKEL
41
42int perf_ftrace__latency_prepare_bpf(struct perf_ftrace *ftrace);
43int perf_ftrace__latency_start_bpf(struct perf_ftrace *ftrace);
44int perf_ftrace__latency_stop_bpf(struct perf_ftrace *ftrace);
45int perf_ftrace__latency_read_bpf(struct perf_ftrace *ftrace,
46				  int buckets[]);
47int perf_ftrace__latency_cleanup_bpf(struct perf_ftrace *ftrace);
48
49#else  /* !HAVE_BPF_SKEL */
50
51static inline int
52perf_ftrace__latency_prepare_bpf(struct perf_ftrace *ftrace __maybe_unused)
53{
54	return -1;
55}
56
57static inline int
58perf_ftrace__latency_start_bpf(struct perf_ftrace *ftrace __maybe_unused)
59{
60	return -1;
61}
62
63static inline int
64perf_ftrace__latency_stop_bpf(struct perf_ftrace *ftrace __maybe_unused)
65{
66	return -1;
67}
68
69static inline int
70perf_ftrace__latency_read_bpf(struct perf_ftrace *ftrace __maybe_unused,
71			      int buckets[] __maybe_unused)
72{
73	return -1;
74}
75
76static inline int
77perf_ftrace__latency_cleanup_bpf(struct perf_ftrace *ftrace __maybe_unused)
78{
79	return -1;
80}
81
82#endif  /* HAVE_BPF_SKEL */
83
84#endif  /* __PERF_FTRACE_H__ */