xref: /linux/arch/Kconfig (revision bcefe12eff5dca6fdfa94ed85e5bee66380d5cd9)
1#
2# General architecture dependent options
3#
4
5config OPROFILE
6	tristate "OProfile system profiling (EXPERIMENTAL)"
7	depends on PROFILING
8	depends on HAVE_OPROFILE
9	depends on TRACING_SUPPORT
10	select TRACING
11	select RING_BUFFER
12	select RING_BUFFER_ALLOW_SWAP
13	help
14	  OProfile is a profiling system capable of profiling the
15	  whole system, include the kernel, kernel modules, libraries,
16	  and applications.
17
18	  If unsure, say N.
19
20config OPROFILE_IBS
21	bool "OProfile AMD IBS support (EXPERIMENTAL)"
22	default n
23	depends on OPROFILE && SMP && X86
24	help
25          Instruction-Based Sampling (IBS) is a new profiling
26          technique that provides rich, precise program performance
27          information. IBS is introduced by AMD Family10h processors
28          (AMD Opteron Quad-Core processor "Barcelona") to overcome
29          the limitations of conventional performance counter
30          sampling.
31
32	  If unsure, say N.
33
34config OPROFILE_EVENT_MULTIPLEX
35	bool "OProfile multiplexing support (EXPERIMENTAL)"
36	default n
37	depends on OPROFILE && X86
38	help
39	  The number of hardware counters is limited. The multiplexing
40	  feature enables OProfile to gather more events than counters
41	  are provided by the hardware. This is realized by switching
42	  between events at an user specified time interval.
43
44	  If unsure, say N.
45
46config HAVE_OPROFILE
47	bool
48
49config KPROBES
50	bool "Kprobes"
51	depends on KALLSYMS && MODULES
52	depends on HAVE_KPROBES
53	help
54	  Kprobes allows you to trap at almost any kernel address and
55	  execute a callback function.  register_kprobe() establishes
56	  a probepoint and specifies the callback.  Kprobes is useful
57	  for kernel debugging, non-intrusive instrumentation and testing.
58	  If in doubt, say "N".
59
60config HAVE_EFFICIENT_UNALIGNED_ACCESS
61	bool
62	help
63	  Some architectures are unable to perform unaligned accesses
64	  without the use of get_unaligned/put_unaligned. Others are
65	  unable to perform such accesses efficiently (e.g. trap on
66	  unaligned access and require fixing it up in the exception
67	  handler.)
68
69	  This symbol should be selected by an architecture if it can
70	  perform unaligned accesses efficiently to allow different
71	  code paths to be selected for these cases. Some network
72	  drivers, for example, could opt to not fix up alignment
73	  problems with received packets if doing so would not help
74	  much.
75
76	  See Documentation/unaligned-memory-access.txt for more
77	  information on the topic of unaligned memory accesses.
78
79config HAVE_SYSCALL_WRAPPERS
80	bool
81
82config KRETPROBES
83	def_bool y
84	depends on KPROBES && HAVE_KRETPROBES
85
86config HAVE_IOREMAP_PROT
87	bool
88
89config HAVE_KPROBES
90	bool
91
92config HAVE_KRETPROBES
93	bool
94
95#
96# An arch should select this if it provides all these things:
97#
98#	task_pt_regs()		in asm/processor.h or asm/ptrace.h
99#	arch_has_single_step()	if there is hardware single-step support
100#	arch_has_block_step()	if there is hardware block-step support
101#	asm/syscall.h		supplying asm-generic/syscall.h interface
102#	linux/regset.h		user_regset interfaces
103#	CORE_DUMP_USE_REGSET	#define'd in linux/elf.h
104#	TIF_SYSCALL_TRACE	calls tracehook_report_syscall_{entry,exit}
105#	TIF_NOTIFY_RESUME	calls tracehook_notify_resume()
106#	signal delivery		calls tracehook_signal_handler()
107#
108config HAVE_ARCH_TRACEHOOK
109	bool
110
111config HAVE_DMA_ATTRS
112	bool
113
114config USE_GENERIC_SMP_HELPERS
115	bool
116
117config HAVE_CLK
118	bool
119	help
120	  The <linux/clk.h> calls support software clock gating and
121	  thus are a key power management tool on many systems.
122
123config HAVE_DMA_API_DEBUG
124	bool
125
126config HAVE_DEFAULT_NO_SPIN_MUTEXES
127	bool
128
129config HAVE_HW_BREAKPOINT
130	bool
131	depends on HAVE_PERF_EVENTS
132	select ANON_INODES
133	select PERF_EVENTS
134
135
136source "kernel/gcov/Kconfig"
137