Blame view

arch/Kconfig 5.32 KB
fb32e03fd   Mathieu Desnoyers   Create arch/Kconfig
1
2
3
  #
  # General architecture dependent options
  #
125e56458   Mathieu Desnoyers   Move Kconfig.inst...
4
5
  
  config OPROFILE
b309a294e   Robert Richter   oprofile: remove ...
6
  	tristate "OProfile system profiling"
125e56458   Mathieu Desnoyers   Move Kconfig.inst...
7
8
  	depends on PROFILING
  	depends on HAVE_OPROFILE
d69d59f49   Ingo Molnar   oprofile: select ...
9
  	select RING_BUFFER
9a5963eb4   Christian Borntraeger   oprofile: fix opr...
10
  	select RING_BUFFER_ALLOW_SWAP
125e56458   Mathieu Desnoyers   Move Kconfig.inst...
11
12
13
14
15
16
  	help
  	  OProfile is a profiling system capable of profiling the
  	  whole system, include the kernel, kernel modules, libraries,
  	  and applications.
  
  	  If unsure, say N.
4d4036e0e   Jason Yeh   oprofile: Impleme...
17
18
19
20
21
22
23
24
25
26
27
  config OPROFILE_EVENT_MULTIPLEX
  	bool "OProfile multiplexing support (EXPERIMENTAL)"
  	default n
  	depends on OPROFILE && X86
  	help
  	  The number of hardware counters is limited. The multiplexing
  	  feature enables OProfile to gather more events than counters
  	  are provided by the hardware. This is realized by switching
  	  between events at an user specified time interval.
  
  	  If unsure, say N.
125e56458   Mathieu Desnoyers   Move Kconfig.inst...
28
  config HAVE_OPROFILE
9ba16087d   Jan Beulich   Kconfig: eliminat...
29
  	bool
125e56458   Mathieu Desnoyers   Move Kconfig.inst...
30

dcfce4a09   Robert Richter   oprofile, x86: Re...
31
32
33
  config OPROFILE_NMI_TIMER
  	def_bool y
  	depends on PERF_EVENTS && HAVE_PERF_EVENTS_NMI
125e56458   Mathieu Desnoyers   Move Kconfig.inst...
34
35
  config KPROBES
  	bool "Kprobes"
05ed160e8   Masami Hiramatsu   kprobes: Fix Kcon...
36
  	depends on MODULES
125e56458   Mathieu Desnoyers   Move Kconfig.inst...
37
  	depends on HAVE_KPROBES
05ed160e8   Masami Hiramatsu   kprobes: Fix Kcon...
38
  	select KALLSYMS
125e56458   Mathieu Desnoyers   Move Kconfig.inst...
39
40
41
42
43
44
  	help
  	  Kprobes allows you to trap at almost any kernel address and
  	  execute a callback function.  register_kprobe() establishes
  	  a probepoint and specifies the callback.  Kprobes is useful
  	  for kernel debugging, non-intrusive instrumentation and testing.
  	  If in doubt, say "N".
45f81b1c9   Steven Rostedt   jump label: Add w...
45
46
47
48
49
50
51
52
53
54
55
56
57
  config JUMP_LABEL
         bool "Optimize trace point call sites"
         depends on HAVE_ARCH_JUMP_LABEL
         help
           If it is detected that the compiler has support for "asm goto",
  	 the kernel will compile trace point locations with just a
  	 nop instruction. When trace points are enabled, the nop will
  	 be converted to a jump to the trace function. This technique
  	 lowers overhead and stress on the branch prediction of the
  	 processor.
  
  	 On i386, options added to the compiler flags may increase
  	 the size of the kernel slightly.
afd66255b   Masami Hiramatsu   kprobes: Introduc...
58
  config OPTPROBES
5cc718b9d   Masami Hiramatsu   kprobes: Hide CON...
59
60
  	def_bool y
  	depends on KPROBES && HAVE_OPTPROBES
afd66255b   Masami Hiramatsu   kprobes: Introduc...
61
  	depends on !PREEMPT
afd66255b   Masami Hiramatsu   kprobes: Introduc...
62

58340a07c   Johannes Berg   introduce HAVE_EF...
63
  config HAVE_EFFICIENT_UNALIGNED_ACCESS
9ba16087d   Jan Beulich   Kconfig: eliminat...
64
  	bool
58340a07c   Johannes Berg   introduce HAVE_EF...
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
  	help
  	  Some architectures are unable to perform unaligned accesses
  	  without the use of get_unaligned/put_unaligned. Others are
  	  unable to perform such accesses efficiently (e.g. trap on
  	  unaligned access and require fixing it up in the exception
  	  handler.)
  
  	  This symbol should be selected by an architecture if it can
  	  perform unaligned accesses efficiently to allow different
  	  code paths to be selected for these cases. Some network
  	  drivers, for example, could opt to not fix up alignment
  	  problems with received packets if doing so would not help
  	  much.
  
  	  See Documentation/unaligned-memory-access.txt for more
  	  information on the topic of unaligned memory accesses.
1a94bc347   Heiko Carstens   [CVE-2009-0029] S...
81
82
  config HAVE_SYSCALL_WRAPPERS
  	bool
9edddaa20   Ananth N Mavinakayanahalli   Kprobes: indicate...
83
84
85
  config KRETPROBES
  	def_bool y
  	depends on KPROBES && HAVE_KRETPROBES
7c68af6e3   Avi Kivity   core, x86: Add us...
86
87
88
89
90
91
  config USER_RETURN_NOTIFIER
  	bool
  	depends on HAVE_USER_RETURN_NOTIFIER
  	help
  	  Provide a kernel-internal notification when a cpu is about to
  	  switch to user mode.
28b2ee20c   Rik van Riel   access_process_vm...
92
  config HAVE_IOREMAP_PROT
9ba16087d   Jan Beulich   Kconfig: eliminat...
93
  	bool
28b2ee20c   Rik van Riel   access_process_vm...
94

125e56458   Mathieu Desnoyers   Move Kconfig.inst...
95
  config HAVE_KPROBES
9ba16087d   Jan Beulich   Kconfig: eliminat...
96
  	bool
9edddaa20   Ananth N Mavinakayanahalli   Kprobes: indicate...
97
98
  
  config HAVE_KRETPROBES
9ba16087d   Jan Beulich   Kconfig: eliminat...
99
  	bool
74bc7ceeb   Arthur Kepner   dma: add dma_*map...
100

afd66255b   Masami Hiramatsu   kprobes: Introduc...
101
102
  config HAVE_OPTPROBES
  	bool
1f5a4ad97   Roland McGrath   tracehook: CONFIG...
103
104
105
106
107
108
  #
  # An arch should select this if it provides all these things:
  #
  #	task_pt_regs()		in asm/processor.h or asm/ptrace.h
  #	arch_has_single_step()	if there is hardware single-step support
  #	arch_has_block_step()	if there is hardware block-step support
1f5a4ad97   Roland McGrath   tracehook: CONFIG...
109
110
111
112
113
114
115
116
  #	asm/syscall.h		supplying asm-generic/syscall.h interface
  #	linux/regset.h		user_regset interfaces
  #	CORE_DUMP_USE_REGSET	#define'd in linux/elf.h
  #	TIF_SYSCALL_TRACE	calls tracehook_report_syscall_{entry,exit}
  #	TIF_NOTIFY_RESUME	calls tracehook_notify_resume()
  #	signal delivery		calls tracehook_signal_handler()
  #
  config HAVE_ARCH_TRACEHOOK
9ba16087d   Jan Beulich   Kconfig: eliminat...
117
  	bool
1f5a4ad97   Roland McGrath   tracehook: CONFIG...
118

74bc7ceeb   Arthur Kepner   dma: add dma_*map...
119
  config HAVE_DMA_ATTRS
9ba16087d   Jan Beulich   Kconfig: eliminat...
120
  	bool
3d4422332   Jens Axboe   Add generic helpe...
121
122
  
  config USE_GENERIC_SMP_HELPERS
9ba16087d   Jan Beulich   Kconfig: eliminat...
123
  	bool
9483a578d   David Brownell   add HAVE_CLK to K...
124

f850c30c8   Heiko Carstens   tracing/kprobes: ...
125
126
  config HAVE_REGS_AND_STACK_ACCESS_API
  	bool
e01292b1f   Heiko Carstens   tracing/kprobes: ...
127
128
129
130
131
  	help
  	  This symbol should be selected by an architecure if it supports
  	  the API needed to access registers and stack entries from pt_regs,
  	  declared in asm/ptrace.h
  	  For example the kprobes-based event tracer needs this API.
f850c30c8   Heiko Carstens   tracing/kprobes: ...
132

9483a578d   David Brownell   add HAVE_CLK to K...
133
  config HAVE_CLK
9ba16087d   Jan Beulich   Kconfig: eliminat...
134
  	bool
9483a578d   David Brownell   add HAVE_CLK to K...
135
136
137
  	help
  	  The <linux/clk.h> calls support software clock gating and
  	  thus are a key power management tool on many systems.
5ee00bd46   Joerg Roedel   dma-debug: add Kc...
138
139
  config HAVE_DMA_API_DEBUG
  	bool
36cd3c9f9   Heiko Carstens   mutex: have non-s...
140

62a038d34   K.Prasad   hw-breakpoints: i...
141
142
  config HAVE_HW_BREAKPOINT
  	bool
99e8c5a3b   Frederic Weisbecker   hw-breakpoints: F...
143
  	depends on PERF_EVENTS
62a038d34   K.Prasad   hw-breakpoints: i...
144

0102752e4   Frederic Weisbecker   hw-breakpoints: S...
145
146
147
148
149
150
151
152
153
154
  config HAVE_MIXED_BREAKPOINTS_REGS
  	bool
  	depends on HAVE_HW_BREAKPOINT
  	help
  	  Depending on the arch implementation of hardware breakpoints,
  	  some of them have separate registers for data and instruction
  	  breakpoints addresses, others have mixed registers to store
  	  them but define the access type in a control register.
  	  Select this option if your arch implements breakpoints under the
  	  latter fashion.
7c68af6e3   Avi Kivity   core, x86: Add us...
155
156
  config HAVE_USER_RETURN_NOTIFIER
  	bool
a1922ed66   Ingo Molnar   Merge branch 'tra...
157

c01d43233   Frederic Weisbecker   lockup_detector: ...
158
159
  config HAVE_PERF_EVENTS_NMI
  	bool
23637d477   Frederic Weisbecker   lockup_detector: ...
160
161
162
163
  	help
  	  System hardware can generate an NMI using the perf event
  	  subsystem.  Also has support for calculating CPU cycle events
  	  to determine how many clock cycles in a given period.
c01d43233   Frederic Weisbecker   lockup_detector: ...
164

bf5438fca   Jason Baron   jump label: Base ...
165
166
  config HAVE_ARCH_JUMP_LABEL
  	bool
335d7afbf   Gerald Schaefer   mutexes, sched: I...
167
168
  config HAVE_ARCH_MUTEX_CPU_RELAX
  	bool
267239116   Peter Zijlstra   mm, powerpc: move...
169
170
  config HAVE_RCU_TABLE_FREE
  	bool
df013ffb8   Huang Ying   Add Kconfig optio...
171
172
  config ARCH_HAVE_NMI_SAFE_CMPXCHG
  	bool
43570fd2f   Heiko Carstens   mm,slub,x86: deco...
173
174
175
176
177
178
179
  config HAVE_ALIGNED_STRUCT_PAGE
  	bool
  	help
  	  This makes sure that struct pages are double word aligned and that
  	  e.g. the SLUB allocator can perform double word atomic operations
  	  on a struct page for better performance. However selecting this
  	  might increase the size of a struct page by a word.
4156153c4   Heiko Carstens   mm,x86,um: move C...
180
181
  config HAVE_CMPXCHG_LOCAL
  	bool
2565409fc   Heiko Carstens   mm,x86,um: move C...
182
183
  config HAVE_CMPXCHG_DOUBLE
  	bool
2521f2c22   Peter Oberparleiter   gcov: add gcov pr...
184
  source "kernel/gcov/Kconfig"