blob: 5d6aa92866cd67bc4ecc226af668969d3963bc99 [file] [log] [blame]
Arnaldo Carvalho de Melo16444a82008-05-12 21:20:42 +02001#
2# Architectures that offer an FTRACE implementation should select HAVE_FTRACE:
3#
4config HAVE_FTRACE
5 bool
Steven Rostedtbc0c38d2008-05-12 21:20:42 +02006
7config TRACING
8 bool
9 select DEBUG_FS
10
Steven Rostedt1b29b012008-05-12 21:20:42 +020011config FTRACE
12 bool "Kernel Function Tracer"
13 depends on DEBUG_KERNEL && HAVE_FTRACE
14 select FRAME_POINTER
15 select TRACING
Steven Rostedt35e8e302008-05-12 21:20:42 +020016 select CONTEXT_SWITCH_TRACER
Steven Rostedt1b29b012008-05-12 21:20:42 +020017 help
18 Enable the kernel to trace every kernel function. This is done
19 by using a compiler feature to insert a small, 5-byte No-Operation
20 instruction to the beginning of every kernel function, which NOP
21 sequence is then dynamically patched into a tracer call when
22 tracing is enabled by the administrator. If it's runtime disabled
23 (the bootup default), then the overhead of the instructions is very
24 small and not measurable even in micro-benchmarks.
Steven Rostedt35e8e302008-05-12 21:20:42 +020025
26config CONTEXT_SWITCH_TRACER
27 bool "Trace process context switches"
28 depends on DEBUG_KERNEL
29 select TRACING
30 select MARKERS
31 help
32 This tracer gets called from the context switch and records
33 all switching of tasks.
34