aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/trace/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/trace/Kconfig')
-rw-r--r--kernel/trace/Kconfig60
1 files changed, 30 insertions, 30 deletions
diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
index a508b9d2adb8..4a13e5a01ce3 100644
--- a/kernel/trace/Kconfig
+++ b/kernel/trace/Kconfig
@@ -56,6 +56,13 @@ config CONTEXT_SWITCH_TRACER
56 select MARKERS 56 select MARKERS
57 bool 57 bool
58 58
59# All tracer options should select GENERIC_TRACER. For those options that are
60# enabled by all tracers (context switch and event tracer) they select TRACING.
61# This allows those options to appear when no other tracer is selected. But the
62# options do not appear when something else selects it. We need the two options
63# GENERIC_TRACER and TRACING to avoid circular dependencies to accomplish the
64# hidding of the automatic options options.
65
59config TRACING 66config TRACING
60 bool 67 bool
61 select DEBUG_FS 68 select DEBUG_FS
@@ -66,6 +73,10 @@ config TRACING
66 select BINARY_PRINTF 73 select BINARY_PRINTF
67 select EVENT_TRACING 74 select EVENT_TRACING
68 75
76config GENERIC_TRACER
77 bool
78 select TRACING
79
69# 80#
70# Minimum requirements an architecture has to meet for us to 81# Minimum requirements an architecture has to meet for us to
71# be able to offer generic tracing facilities: 82# be able to offer generic tracing facilities:
@@ -95,7 +106,7 @@ config FUNCTION_TRACER
95 depends on HAVE_FUNCTION_TRACER 106 depends on HAVE_FUNCTION_TRACER
96 select FRAME_POINTER 107 select FRAME_POINTER
97 select KALLSYMS 108 select KALLSYMS
98 select TRACING 109 select GENERIC_TRACER
99 select CONTEXT_SWITCH_TRACER 110 select CONTEXT_SWITCH_TRACER
100 help 111 help
101 Enable the kernel to trace every kernel function. This is done 112 Enable the kernel to trace every kernel function. This is done
@@ -126,7 +137,7 @@ config IRQSOFF_TRACER
126 depends on TRACE_IRQFLAGS_SUPPORT 137 depends on TRACE_IRQFLAGS_SUPPORT
127 depends on GENERIC_TIME 138 depends on GENERIC_TIME
128 select TRACE_IRQFLAGS 139 select TRACE_IRQFLAGS
129 select TRACING 140 select GENERIC_TRACER
130 select TRACER_MAX_TRACE 141 select TRACER_MAX_TRACE
131 help 142 help
132 This option measures the time spent in irqs-off critical 143 This option measures the time spent in irqs-off critical
@@ -147,7 +158,7 @@ config PREEMPT_TRACER
147 default n 158 default n
148 depends on GENERIC_TIME 159 depends on GENERIC_TIME
149 depends on PREEMPT 160 depends on PREEMPT
150 select TRACING 161 select GENERIC_TRACER
151 select TRACER_MAX_TRACE 162 select TRACER_MAX_TRACE
152 help 163 help
153 This option measures the time spent in preemption off critical 164 This option measures the time spent in preemption off critical
@@ -166,7 +177,7 @@ config PREEMPT_TRACER
166config SYSPROF_TRACER 177config SYSPROF_TRACER
167 bool "Sysprof Tracer" 178 bool "Sysprof Tracer"
168 depends on X86 179 depends on X86
169 select TRACING 180 select GENERIC_TRACER
170 select CONTEXT_SWITCH_TRACER 181 select CONTEXT_SWITCH_TRACER
171 help 182 help
172 This tracer provides the trace needed by the 'Sysprof' userspace 183 This tracer provides the trace needed by the 'Sysprof' userspace
@@ -174,44 +185,33 @@ config SYSPROF_TRACER
174 185
175config SCHED_TRACER 186config SCHED_TRACER
176 bool "Scheduling Latency Tracer" 187 bool "Scheduling Latency Tracer"
177 select TRACING 188 select GENERIC_TRACER
178 select CONTEXT_SWITCH_TRACER 189 select CONTEXT_SWITCH_TRACER
179 select TRACER_MAX_TRACE 190 select TRACER_MAX_TRACE
180 help 191 help
181 This tracer tracks the latency of the highest priority task 192 This tracer tracks the latency of the highest priority task
182 to be scheduled in, starting from the point it has woken up. 193 to be scheduled in, starting from the point it has woken up.
183 194
184config ENABLE_CONTEXT_SWITCH_TRACER 195config ENABLE_DEFAULT_TRACERS
185 bool "Trace process context switches" 196 bool "Trace process context switches and events"
186 select TRACING 197 depends on !GENERIC_TRACER
187 select CONTEXT_SWITCH_TRACER
188 help
189 This tracer gets called from the context switch and records
190 all switching of tasks.
191
192config ENABLE_EVENT_TRACING
193 bool "Trace various events in the kernel"
194 select TRACING 198 select TRACING
195 help 199 help
196 This tracer hooks to various trace points in the kernel 200 This tracer hooks to various trace points in the kernel
197 allowing the user to pick and choose which trace point they 201 allowing the user to pick and choose which trace point they
198 want to trace. 202 want to trace. It also includes the sched_switch tracer plugin.
199
200 Note, all tracers enable event tracing. This option is
201 only a convenience to enable event tracing when no other
202 tracers are selected.
203 203
204config FTRACE_SYSCALLS 204config FTRACE_SYSCALLS
205 bool "Trace syscalls" 205 bool "Trace syscalls"
206 depends on HAVE_FTRACE_SYSCALLS 206 depends on HAVE_FTRACE_SYSCALLS
207 select TRACING 207 select GENERIC_TRACER
208 select KALLSYMS 208 select KALLSYMS
209 help 209 help
210 Basic tracer to catch the syscall entry and exit events. 210 Basic tracer to catch the syscall entry and exit events.
211 211
212config BOOT_TRACER 212config BOOT_TRACER
213 bool "Trace boot initcalls" 213 bool "Trace boot initcalls"
214 select TRACING 214 select GENERIC_TRACER
215 select CONTEXT_SWITCH_TRACER 215 select CONTEXT_SWITCH_TRACER
216 help 216 help
217 This tracer helps developers to optimize boot times: it records 217 This tracer helps developers to optimize boot times: it records
@@ -228,7 +228,7 @@ config BOOT_TRACER
228 228
229config TRACE_BRANCH_PROFILING 229config TRACE_BRANCH_PROFILING
230 bool 230 bool
231 select TRACING 231 select GENERIC_TRACER
232 232
233choice 233choice
234 prompt "Branch Profiling" 234 prompt "Branch Profiling"
@@ -308,7 +308,7 @@ config BRANCH_TRACER
308config POWER_TRACER 308config POWER_TRACER
309 bool "Trace power consumption behavior" 309 bool "Trace power consumption behavior"
310 depends on X86 310 depends on X86
311 select TRACING 311 select GENERIC_TRACER
312 help 312 help
313 This tracer helps developers to analyze and optimize the kernels 313 This tracer helps developers to analyze and optimize the kernels
314 power management decisions, specifically the C-state and P-state 314 power management decisions, specifically the C-state and P-state
@@ -342,14 +342,14 @@ config STACK_TRACER
342config HW_BRANCH_TRACER 342config HW_BRANCH_TRACER
343 depends on HAVE_HW_BRANCH_TRACER 343 depends on HAVE_HW_BRANCH_TRACER
344 bool "Trace hw branches" 344 bool "Trace hw branches"
345 select TRACING 345 select GENERIC_TRACER
346 help 346 help
347 This tracer records all branches on the system in a circular 347 This tracer records all branches on the system in a circular
348 buffer giving access to the last N branches for each cpu. 348 buffer giving access to the last N branches for each cpu.
349 349
350config KMEMTRACE 350config KMEMTRACE
351 bool "Trace SLAB allocations" 351 bool "Trace SLAB allocations"
352 select TRACING 352 select GENERIC_TRACER
353 help 353 help
354 kmemtrace provides tracing for slab allocator functions, such as 354 kmemtrace provides tracing for slab allocator functions, such as
355 kmalloc, kfree, kmem_cache_alloc, kmem_cache_free etc.. Collected 355 kmalloc, kfree, kmem_cache_alloc, kmem_cache_free etc.. Collected
@@ -369,7 +369,7 @@ config KMEMTRACE
369 369
370config WORKQUEUE_TRACER 370config WORKQUEUE_TRACER
371 bool "Trace workqueues" 371 bool "Trace workqueues"
372 select TRACING 372 select GENERIC_TRACER
373 help 373 help
374 The workqueue tracer provides some statistical informations 374 The workqueue tracer provides some statistical informations
375 about each cpu workqueue thread such as the number of the 375 about each cpu workqueue thread such as the number of the
@@ -385,7 +385,7 @@ config BLK_DEV_IO_TRACE
385 select RELAY 385 select RELAY
386 select DEBUG_FS 386 select DEBUG_FS
387 select TRACEPOINTS 387 select TRACEPOINTS
388 select TRACING 388 select GENERIC_TRACER
389 select STACKTRACE 389 select STACKTRACE
390 help 390 help
391 Say Y here if you want to be able to trace the block layer actions 391 Say Y here if you want to be able to trace the block layer actions
@@ -446,7 +446,7 @@ config FTRACE_SELFTEST
446 446
447config FTRACE_STARTUP_TEST 447config FTRACE_STARTUP_TEST
448 bool "Perform a startup test on ftrace" 448 bool "Perform a startup test on ftrace"
449 depends on TRACING 449 depends on GENERIC_TRACER
450 select FTRACE_SELFTEST 450 select FTRACE_SELFTEST
451 help 451 help
452 This option performs a series of startup tests on ftrace. On bootup 452 This option performs a series of startup tests on ftrace. On bootup
@@ -457,7 +457,7 @@ config FTRACE_STARTUP_TEST
457config MMIOTRACE 457config MMIOTRACE
458 bool "Memory mapped IO tracing" 458 bool "Memory mapped IO tracing"
459 depends on HAVE_MMIOTRACE_SUPPORT && PCI 459 depends on HAVE_MMIOTRACE_SUPPORT && PCI
460 select TRACING 460 select GENERIC_TRACER
461 help 461 help
462 Mmiotrace traces Memory Mapped I/O access and is meant for 462 Mmiotrace traces Memory Mapped I/O access and is meant for
463 debugging and reverse engineering. It is called from the ioremap 463 debugging and reverse engineering. It is called from the ioremap