diff options
| author | Ingo Molnar <mingo@elte.hu> | 2009-04-05 19:41:22 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2009-04-05 19:41:22 -0400 |
| commit | 9efe21cb82b5dbe3b0b2ae4de4eccc64ecb94e95 (patch) | |
| tree | 7ff8833745d2f268f897f6fa4a27263b4a572245 /kernel/trace/Kconfig | |
| parent | de18836e447c2dc30120c0919b8db8ddc0401cc4 (diff) | |
| parent | 0221c81b1b8eb0cbb6b30a0ced52ead32d2b4e4c (diff) | |
Merge branch 'linus' into irq/threaded
Conflicts:
include/linux/irq.h
kernel/irq/handle.c
Diffstat (limited to 'kernel/trace/Kconfig')
| -rw-r--r-- | kernel/trace/Kconfig | 132 |
1 files changed, 112 insertions, 20 deletions
diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig index 34e707e5ab8..2246141bda4 100644 --- a/kernel/trace/Kconfig +++ b/kernel/trace/Kconfig | |||
| @@ -9,6 +9,9 @@ config USER_STACKTRACE_SUPPORT | |||
| 9 | config NOP_TRACER | 9 | config NOP_TRACER |
| 10 | bool | 10 | bool |
| 11 | 11 | ||
| 12 | config HAVE_FTRACE_NMI_ENTER | ||
| 13 | bool | ||
| 14 | |||
| 12 | config HAVE_FUNCTION_TRACER | 15 | config HAVE_FUNCTION_TRACER |
| 13 | bool | 16 | bool |
| 14 | 17 | ||
| @@ -31,12 +34,20 @@ config HAVE_FTRACE_MCOUNT_RECORD | |||
| 31 | config HAVE_HW_BRANCH_TRACER | 34 | config HAVE_HW_BRANCH_TRACER |
| 32 | bool | 35 | bool |
| 33 | 36 | ||
| 37 | config HAVE_FTRACE_SYSCALLS | ||
| 38 | bool | ||
| 39 | |||
| 34 | config TRACER_MAX_TRACE | 40 | config TRACER_MAX_TRACE |
| 35 | bool | 41 | bool |
| 36 | 42 | ||
| 37 | config RING_BUFFER | 43 | config RING_BUFFER |
| 38 | bool | 44 | bool |
| 39 | 45 | ||
| 46 | config FTRACE_NMI_ENTER | ||
| 47 | bool | ||
| 48 | depends on HAVE_FTRACE_NMI_ENTER | ||
| 49 | default y | ||
| 50 | |||
| 40 | config TRACING | 51 | config TRACING |
| 41 | bool | 52 | bool |
| 42 | select DEBUG_FS | 53 | select DEBUG_FS |
| @@ -44,13 +55,29 @@ config TRACING | |||
| 44 | select STACKTRACE if STACKTRACE_SUPPORT | 55 | select STACKTRACE if STACKTRACE_SUPPORT |
| 45 | select TRACEPOINTS | 56 | select TRACEPOINTS |
| 46 | select NOP_TRACER | 57 | select NOP_TRACER |
| 58 | select BINARY_PRINTF | ||
| 59 | |||
| 60 | # | ||
| 61 | # Minimum requirements an architecture has to meet for us to | ||
| 62 | # be able to offer generic tracing facilities: | ||
| 63 | # | ||
| 64 | config TRACING_SUPPORT | ||
| 65 | bool | ||
| 66 | # PPC32 has no irqflags tracing support, but it can use most of the | ||
| 67 | # tracers anyway, they were tested to build and work. Note that new | ||
| 68 | # exceptions to this list aren't welcomed, better implement the | ||
| 69 | # irqflags tracing for your architecture. | ||
| 70 | depends on TRACE_IRQFLAGS_SUPPORT || PPC32 | ||
| 71 | depends on STACKTRACE_SUPPORT | ||
| 72 | default y | ||
| 73 | |||
| 74 | if TRACING_SUPPORT | ||
| 47 | 75 | ||
| 48 | menu "Tracers" | 76 | menu "Tracers" |
| 49 | 77 | ||
| 50 | config FUNCTION_TRACER | 78 | config FUNCTION_TRACER |
| 51 | bool "Kernel Function Tracer" | 79 | bool "Kernel Function Tracer" |
| 52 | depends on HAVE_FUNCTION_TRACER | 80 | depends on HAVE_FUNCTION_TRACER |
| 53 | depends on DEBUG_KERNEL | ||
| 54 | select FRAME_POINTER | 81 | select FRAME_POINTER |
| 55 | select KALLSYMS | 82 | select KALLSYMS |
| 56 | select TRACING | 83 | select TRACING |
| @@ -72,18 +99,16 @@ config FUNCTION_GRAPH_TRACER | |||
| 72 | help | 99 | help |
| 73 | Enable the kernel to trace a function at both its return | 100 | Enable the kernel to trace a function at both its return |
| 74 | and its entry. | 101 | and its entry. |
| 75 | It's first purpose is to trace the duration of functions and | 102 | Its first purpose is to trace the duration of functions and |
| 76 | draw a call graph for each thread with some informations like | 103 | draw a call graph for each thread with some information like |
| 77 | the return value. | 104 | the return value. This is done by setting the current return |
| 78 | This is done by setting the current return address on the current | 105 | address on the current task structure into a stack of calls. |
| 79 | task structure into a stack of calls. | ||
| 80 | 106 | ||
| 81 | config IRQSOFF_TRACER | 107 | config IRQSOFF_TRACER |
| 82 | bool "Interrupts-off Latency Tracer" | 108 | bool "Interrupts-off Latency Tracer" |
| 83 | default n | 109 | default n |
| 84 | depends on TRACE_IRQFLAGS_SUPPORT | 110 | depends on TRACE_IRQFLAGS_SUPPORT |
| 85 | depends on GENERIC_TIME | 111 | depends on GENERIC_TIME |
| 86 | depends on DEBUG_KERNEL | ||
| 87 | select TRACE_IRQFLAGS | 112 | select TRACE_IRQFLAGS |
| 88 | select TRACING | 113 | select TRACING |
| 89 | select TRACER_MAX_TRACE | 114 | select TRACER_MAX_TRACE |
| @@ -106,7 +131,6 @@ config PREEMPT_TRACER | |||
| 106 | default n | 131 | default n |
| 107 | depends on GENERIC_TIME | 132 | depends on GENERIC_TIME |
| 108 | depends on PREEMPT | 133 | depends on PREEMPT |
| 109 | depends on DEBUG_KERNEL | ||
| 110 | select TRACING | 134 | select TRACING |
| 111 | select TRACER_MAX_TRACE | 135 | select TRACER_MAX_TRACE |
| 112 | help | 136 | help |
| @@ -127,13 +151,13 @@ config SYSPROF_TRACER | |||
| 127 | bool "Sysprof Tracer" | 151 | bool "Sysprof Tracer" |
| 128 | depends on X86 | 152 | depends on X86 |
| 129 | select TRACING | 153 | select TRACING |
| 154 | select CONTEXT_SWITCH_TRACER | ||
| 130 | help | 155 | help |
| 131 | This tracer provides the trace needed by the 'Sysprof' userspace | 156 | This tracer provides the trace needed by the 'Sysprof' userspace |
| 132 | tool. | 157 | tool. |
| 133 | 158 | ||
| 134 | config SCHED_TRACER | 159 | config SCHED_TRACER |
| 135 | bool "Scheduling Latency Tracer" | 160 | bool "Scheduling Latency Tracer" |
| 136 | depends on DEBUG_KERNEL | ||
| 137 | select TRACING | 161 | select TRACING |
| 138 | select CONTEXT_SWITCH_TRACER | 162 | select CONTEXT_SWITCH_TRACER |
| 139 | select TRACER_MAX_TRACE | 163 | select TRACER_MAX_TRACE |
| @@ -143,16 +167,30 @@ config SCHED_TRACER | |||
| 143 | 167 | ||
| 144 | config CONTEXT_SWITCH_TRACER | 168 | config CONTEXT_SWITCH_TRACER |
| 145 | bool "Trace process context switches" | 169 | bool "Trace process context switches" |
| 146 | depends on DEBUG_KERNEL | ||
| 147 | select TRACING | 170 | select TRACING |
| 148 | select MARKERS | 171 | select MARKERS |
| 149 | help | 172 | help |
| 150 | This tracer gets called from the context switch and records | 173 | This tracer gets called from the context switch and records |
| 151 | all switching of tasks. | 174 | all switching of tasks. |
| 152 | 175 | ||
| 176 | config EVENT_TRACER | ||
| 177 | bool "Trace various events in the kernel" | ||
| 178 | select TRACING | ||
| 179 | help | ||
| 180 | This tracer hooks to various trace points in the kernel | ||
| 181 | allowing the user to pick and choose which trace point they | ||
| 182 | want to trace. | ||
| 183 | |||
| 184 | config FTRACE_SYSCALLS | ||
| 185 | bool "Trace syscalls" | ||
| 186 | depends on HAVE_FTRACE_SYSCALLS | ||
| 187 | select TRACING | ||
| 188 | select KALLSYMS | ||
| 189 | help | ||
| 190 | Basic tracer to catch the syscall entry and exit events. | ||
| 191 | |||
| 153 | config BOOT_TRACER | 192 | config BOOT_TRACER |
| 154 | bool "Trace boot initcalls" | 193 | bool "Trace boot initcalls" |
| 155 | depends on DEBUG_KERNEL | ||
| 156 | select TRACING | 194 | select TRACING |
| 157 | select CONTEXT_SWITCH_TRACER | 195 | select CONTEXT_SWITCH_TRACER |
| 158 | help | 196 | help |
| @@ -165,13 +203,11 @@ config BOOT_TRACER | |||
| 165 | representation of the delays during initcalls - but the raw | 203 | representation of the delays during initcalls - but the raw |
| 166 | /debug/tracing/trace text output is readable too. | 204 | /debug/tracing/trace text output is readable too. |
| 167 | 205 | ||
| 168 | ( Note that tracing self tests can't be enabled if this tracer is | 206 | You must pass in ftrace=initcall to the kernel command line |
| 169 | selected, because the self-tests are an initcall as well and that | 207 | to enable this on bootup. |
| 170 | would invalidate the boot trace. ) | ||
| 171 | 208 | ||
| 172 | config TRACE_BRANCH_PROFILING | 209 | config TRACE_BRANCH_PROFILING |
| 173 | bool "Trace likely/unlikely profiler" | 210 | bool "Trace likely/unlikely profiler" |
| 174 | depends on DEBUG_KERNEL | ||
| 175 | select TRACING | 211 | select TRACING |
| 176 | help | 212 | help |
| 177 | This tracer profiles all the the likely and unlikely macros | 213 | This tracer profiles all the the likely and unlikely macros |
| @@ -224,7 +260,6 @@ config BRANCH_TRACER | |||
| 224 | 260 | ||
| 225 | config POWER_TRACER | 261 | config POWER_TRACER |
| 226 | bool "Trace power consumption behavior" | 262 | bool "Trace power consumption behavior" |
| 227 | depends on DEBUG_KERNEL | ||
| 228 | depends on X86 | 263 | depends on X86 |
| 229 | select TRACING | 264 | select TRACING |
| 230 | help | 265 | help |
| @@ -236,7 +271,6 @@ config POWER_TRACER | |||
| 236 | config STACK_TRACER | 271 | config STACK_TRACER |
| 237 | bool "Trace max stack" | 272 | bool "Trace max stack" |
| 238 | depends on HAVE_FUNCTION_TRACER | 273 | depends on HAVE_FUNCTION_TRACER |
| 239 | depends on DEBUG_KERNEL | ||
| 240 | select FUNCTION_TRACER | 274 | select FUNCTION_TRACER |
