Arnaldo Carvalho de Melo | 16444a8 | 2008-05-12 21:20:42 +0200 | [diff] [blame] | 1 | # |
| 2 | # Architectures that offer an FTRACE implementation should select HAVE_FTRACE: |
| 3 | # |
| 4 | config HAVE_FTRACE |
| 5 | bool |
Steven Rostedt | bc0c38d | 2008-05-12 21:20:42 +0200 | [diff] [blame] | 6 | |
Steven Rostedt | 352ad25 | 2008-05-12 21:20:42 +0200 | [diff] [blame^] | 7 | config TRACER_MAX_TRACE |
| 8 | bool |
| 9 | |
Steven Rostedt | bc0c38d | 2008-05-12 21:20:42 +0200 | [diff] [blame] | 10 | config TRACING |
| 11 | bool |
| 12 | select DEBUG_FS |
| 13 | |
Steven Rostedt | 1b29b01 | 2008-05-12 21:20:42 +0200 | [diff] [blame] | 14 | config FTRACE |
| 15 | bool "Kernel Function Tracer" |
| 16 | depends on DEBUG_KERNEL && HAVE_FTRACE |
| 17 | select FRAME_POINTER |
| 18 | select TRACING |
Steven Rostedt | 35e8e30 | 2008-05-12 21:20:42 +0200 | [diff] [blame] | 19 | select CONTEXT_SWITCH_TRACER |
Steven Rostedt | 1b29b01 | 2008-05-12 21:20:42 +0200 | [diff] [blame] | 20 | help |
| 21 | Enable the kernel to trace every kernel function. This is done |
| 22 | by using a compiler feature to insert a small, 5-byte No-Operation |
| 23 | instruction to the beginning of every kernel function, which NOP |
| 24 | sequence is then dynamically patched into a tracer call when |
| 25 | tracing is enabled by the administrator. If it's runtime disabled |
| 26 | (the bootup default), then the overhead of the instructions is very |
| 27 | small and not measurable even in micro-benchmarks. |
Steven Rostedt | 35e8e30 | 2008-05-12 21:20:42 +0200 | [diff] [blame] | 28 | |
Steven Rostedt | 352ad25 | 2008-05-12 21:20:42 +0200 | [diff] [blame^] | 29 | config SCHED_TRACER |
| 30 | bool "Scheduling Latency Tracer" |
| 31 | depends on DEBUG_KERNEL |
| 32 | select TRACING |
| 33 | select CONTEXT_SWITCH_TRACER |
| 34 | select TRACER_MAX_TRACE |
| 35 | help |
| 36 | This tracer tracks the latency of the highest priority task |
| 37 | to be scheduled in, starting from the point it has woken up. |
| 38 | |
Steven Rostedt | 35e8e30 | 2008-05-12 21:20:42 +0200 | [diff] [blame] | 39 | config CONTEXT_SWITCH_TRACER |
| 40 | bool "Trace process context switches" |
| 41 | depends on DEBUG_KERNEL |
| 42 | select TRACING |
| 43 | select MARKERS |
| 44 | help |
| 45 | This tracer gets called from the context switch and records |
| 46 | all switching of tasks. |
| 47 | |