diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-06-17 06:52:15 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-06-17 06:56:49 -0400 |
commit | eadb8a091b27a840de7450f84ecff5ef13476424 (patch) | |
tree | 58c3782d40def63baa8167f3d31e3048cb4c7660 /kernel/trace/Kconfig | |
parent | 73874005cd8800440be4299bd095387fff4b90ac (diff) | |
parent | 65795efbd380a832ae508b04dba8f8e53f0b84d9 (diff) |
Merge branch 'linus' into tracing/hw-breakpoints
Conflicts:
arch/x86/Kconfig
arch/x86/kernel/traps.c
arch/x86/power/cpu.c
arch/x86/power/cpu_32.c
kernel/Makefile
Semantic conflict:
arch/x86/kernel/hw_breakpoint.c
Merge reason: Resolve the conflicts, move from put_cpu_no_sched() to
put_cpu() in arch/x86/kernel/hw_breakpoint.c.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/trace/Kconfig')
-rw-r--r-- | kernel/trace/Kconfig | 70 |
1 files changed, 35 insertions, 35 deletions
diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig index d7f01e6e8ba5..ae048a2dbbe8 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 | |||
59 | config TRACING | 66 | config 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 | ||
76 | config 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 |
@@ -136,7 +147,7 @@ config IRQSOFF_TRACER | |||
136 | disabled by default and can be runtime (re-)started | 147 | disabled by default and can be runtime (re-)started |
137 | via: | 148 | via: |
138 | 149 | ||
139 | echo 0 > /debugfs/tracing/tracing_max_latency | 150 | echo 0 > /sys/kernel/debug/tracing/tracing_max_latency |
140 | 151 | ||
141 | (Note that kernel size and overhead increases with this option | 152 | (Note that kernel size and overhead increases with this option |
142 | enabled. This option and the preempt-off timing option can be | 153 | enabled. This option and the preempt-off timing option can be |
@@ -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 |
@@ -157,7 +168,7 @@ config PREEMPT_TRACER | |||
157 | disabled by default and can be runtime (re-)started | 168 | disabled by default and can be runtime (re-)started |
158 | via: | 169 | via: |
159 | 170 | ||
160 | echo 0 > /debugfs/tracing/tracing_max_latency | 171 | echo 0 > /sys/kernel/debug/tracing/tracing_max_latency |
161 | 172 | ||
162 | (Note that kernel size and overhead increases with this option | 173 | (Note that kernel size and overhead increases with this option |
163 | enabled. This option and the irqs-off timing option can be | 174 | enabled. This option and the irqs-off timing option can be |
@@ -166,7 +177,7 @@ config PREEMPT_TRACER | |||
166 | config SYSPROF_TRACER | 177 | config 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 | ||
175 | config SCHED_TRACER | 186 | config 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 | ||
184 | config ENABLE_CONTEXT_SWITCH_TRACER | 195 | config 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 | |||
192 | config 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 | ||
204 | config FTRACE_SYSCALLS | 204 | config 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 | ||
212 | config BOOT_TRACER | 212 | config 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 | ||
229 | config TRACE_BRANCH_PROFILING | 229 | config TRACE_BRANCH_PROFILING |
230 | bool | 230 | bool |
231 | select TRACING | 231 | select GENERIC_TRACER |
232 | 232 | ||
233 | choice | 233 | choice |
234 | prompt "Branch Profiling" | 234 | prompt "Branch Profiling" |
@@ -261,7 +261,7 @@ config PROFILE_ANNOTATED_BRANCHES | |||
261 | This tracer profiles all the the likely and unlikely macros | 261 | This tracer profiles all the the likely and unlikely macros |
262 | in the kernel. It will display the results in: | 262 | in the kernel. It will display the results in: |
263 | 263 | ||
264 | /debugfs/tracing/profile_annotated_branch | 264 | /sys/kernel/debug/tracing/profile_annotated_branch |
265 | 265 | ||
266 | Note: this will add a significant overhead, only turn this | 266 | Note: this will add a significant overhead, only turn this |
267 | on if you need to profile the system's use of these macros. | 267 | on if you need to profile the system's use of these macros. |
@@ -274,7 +274,7 @@ config PROFILE_ALL_BRANCHES | |||
274 | taken in the kernel is recorded whether it hit or miss. | 274 | taken in the kernel is recorded whether it hit or miss. |
275 | The results will be displayed in: | 275 | The results will be displayed in: |
276 | 276 | ||
277 | /debugfs/tracing/profile_branch | 277 | /sys/kernel/debug/tracing/profile_branch |
278 | 278 | ||
279 | This option also enables the likely/unlikely profiler. | 279 | This option also enables the likely/unlikely profiler. |
280 | 280 | ||
@@ -308,7 +308,7 @@ config BRANCH_TRACER | |||
308 | config POWER_TRACER | 308 | config 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 |
@@ -344,7 +344,7 @@ config STACK_TRACER | |||
344 | select KALLSYMS | 344 | select KALLSYMS |
345 | help | 345 | help |
346 | This special tracer records the maximum stack footprint of the | 346 | This special tracer records the maximum stack footprint of the |
347 | kernel and displays it in debugfs/tracing/stack_trace. | 347 | kernel and displays it in /sys/kernel/debug/tracing/stack_trace. |
348 | 348 | ||
349 | This tracer works by hooking into every function call that the | 349 | This tracer works by hooking into every function call that the |
350 | kernel executes, and keeping a maximum stack depth value and | 350 | kernel executes, and keeping a maximum stack depth value and |
@@ -363,14 +363,14 @@ config STACK_TRACER | |||
363 | config HW_BRANCH_TRACER | 363 | config HW_BRANCH_TRACER |
364 | depends on HAVE_HW_BRANCH_TRACER | 364 | depends on HAVE_HW_BRANCH_TRACER |
365 | bool "Trace hw branches" | 365 | bool "Trace hw branches" |
366 | select TRACING | 366 | select GENERIC_TRACER |
367 | help | 367 | help |
368 | This tracer records all branches on the system in a circular | 368 | This tracer records all branches on the system in a circular |
369 | buffer giving access to the last N branches for each cpu. | 369 | buffer giving access to the last N branches for each cpu. |
370 | 370 | ||
371 | config KMEMTRACE | 371 | config KMEMTRACE |
372 | bool "Trace SLAB allocations" | 372 | bool "Trace SLAB allocations" |
373 | select TRACING | 373 | select GENERIC_TRACER |
374 | help | 374 | help |
375 | kmemtrace provides tracing for slab allocator functions, such as | 375 | kmemtrace provides tracing for slab allocator functions, such as |
376 | kmalloc, kfree, kmem_cache_alloc, kmem_cache_free etc.. Collected | 376 | kmalloc, kfree, kmem_cache_alloc, kmem_cache_free etc.. Collected |
@@ -390,7 +390,7 @@ config KMEMTRACE | |||
390 | 390 | ||
391 | config WORKQUEUE_TRACER | 391 | config WORKQUEUE_TRACER |
392 | bool "Trace workqueues" | 392 | bool "Trace workqueues" |
393 | select TRACING | 393 | select GENERIC_TRACER |
394 | help | 394 | help |
395 | The workqueue tracer provides some statistical informations | 395 | The workqueue tracer provides some statistical informations |
396 | about each cpu workqueue thread such as the number of the | 396 | about each cpu workqueue thread such as the number of the |
@@ -406,7 +406,7 @@ config BLK_DEV_IO_TRACE | |||
406 | select RELAY | 406 | select RELAY |
407 | select DEBUG_FS | 407 | select DEBUG_FS |
408 | select TRACEPOINTS | 408 | select TRACEPOINTS |
409 | select TRACING | 409 | select GENERIC_TRACER |
410 | select STACKTRACE | 410 | select STACKTRACE |
411 | help | 411 | help |
412 | Say Y here if you want to be able to trace the block layer actions | 412 | Say Y here if you want to be able to trace the block layer actions |
@@ -467,7 +467,7 @@ config FTRACE_SELFTEST | |||
467 | 467 | ||
468 | config FTRACE_STARTUP_TEST | 468 | config FTRACE_STARTUP_TEST |
469 | bool "Perform a startup test on ftrace" | 469 | bool "Perform a startup test on ftrace" |
470 | depends on TRACING | 470 | depends on GENERIC_TRACER |
471 | select FTRACE_SELFTEST | 471 | select FTRACE_SELFTEST |
472 | help | 472 | help |
473 | This option performs a series of startup tests on ftrace. On bootup | 473 | This option performs a series of startup tests on ftrace. On bootup |
@@ -478,7 +478,7 @@ config FTRACE_STARTUP_TEST | |||
478 | config MMIOTRACE | 478 | config MMIOTRACE |
479 | bool "Memory mapped IO tracing" | 479 | bool "Memory mapped IO tracing" |
480 | depends on HAVE_MMIOTRACE_SUPPORT && PCI | 480 | depends on HAVE_MMIOTRACE_SUPPORT && PCI |
481 | select TRACING | 481 | select GENERIC_TRACER |
482 | help | 482 | help |
483 | Mmiotrace traces Memory Mapped I/O access and is meant for | 483 | Mmiotrace traces Memory Mapped I/O access and is meant for |
484 | debugging and reverse engineering. It is called from the ioremap | 484 | debugging and reverse engineering. It is called from the ioremap |