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	const char	*vmlinux_name,
47			*kallsyms_name,
48			*source_prefix,
49			*field_sep,
50			*graph_function;
51	const char	*default_guest_vmlinux_name,
52			*default_guest_kallsyms,
53			*default_guest_modules;
54	const char	*guestmount;
55	const char	*dso_list_str,
56			*comm_list_str,
57			*pid_list_str,
58			*tid_list_str,
59			*sym_list_str,
60			*col_width_list_str,
61			*bt_stop_list_str;
62	char		*addr2line_path;
63	unsigned long	time_quantum;
64       struct strlist	*dso_list,
65			*comm_list,
66			*sym_list,
67			*dso_from_list,
68			*dso_to_list,
69			*sym_from_list,
70			*sym_to_list,
71			*bt_stop_list;
72	struct intlist	*pid_list,
73			*tid_list,
74			*addr_list;
75	const char	*symfs;
76	int		res_sample;
77	int		pad_output_len_dso;
78	int		group_sort_idx;
79	int		addr_range;
80};
81
82extern struct symbol_conf symbol_conf;
83
84#endif // __PERF_SYMBOL_CONF
85