1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef __PERF_SYMBOL_CONF
3#define __PERF_SYMBOL_CONF 1
4
5#include <stdbool.h>
6
7struct strlist;
8struct intlist;
9
10struct symbol_conf {
11	bool		nanosecs;
12	unsigned short	priv_size;
13	bool		try_vmlinux_path,
14			init_annotation,
15			force,
16			ignore_vmlinux,
17			ignore_vmlinux_buildid,
18			show_kernel_path,
19			use_modules,
20			allow_aliases,
21			show_nr_samples,
22			show_total_period,
23			use_callchain,
24			cumulate_callchain,
25			show_branchflag_count,
26			exclude_other,
27			show_cpu_utilization,
28			initialized,
29			kptr_restrict,
30			event_group,
31			demangle,
32			demangle_kernel,
33			filter_relative,
34			show_hist_headers,
35			has_filter,
36			show_ref_callgraph,
37			hide_unresolved,
38			raw_trace,
39			report_hierarchy,
40			report_block,
41			report_individual_block,
42			inline_name,
43			disable_add2line_warn,
44			buildid_mmap2,
45			guest_code,
46			lazy_load_kernel_maps,
47			keep_exited_threads,
48			annotate_data_member,
49			annotate_data_sample;
50	const char	*vmlinux_name,
51			*kallsyms_name,
52			*source_prefix,
53			*field_sep,
54			*graph_function;
55	const char	*default_guest_vmlinux_name,
56			*default_guest_kallsyms,
57			*default_guest_modules;
58	const char	*guestmount;
59	const char	*dso_list_str,
60			*comm_list_str,
61			*pid_list_str,
62			*tid_list_str,
63			*sym_list_str,
64			*col_width_list_str,
65			*bt_stop_list_str;
66	char		*addr2line_path;
67	unsigned long	time_quantum;
68       struct strlist	*dso_list,
69			*comm_list,
70			*sym_list,
71			*dso_from_list,
72			*dso_to_list,
73			*sym_from_list,
74			*sym_to_list,
75			*bt_stop_list;
76	struct intlist	*pid_list,
77			*tid_list,
78			*addr_list;
79	const char	*symfs;
80	int		res_sample;
81	int		pad_output_len_dso;
82	int		group_sort_idx;
83	int		addr_range;
84};
85
86extern struct symbol_conf symbol_conf;
87
88#endif // __PERF_SYMBOL_CONF
89