aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/trace/Kconfig
diff options
context:
space:
mode:
authorSteven Rostedt <srostedt@redhat.com>2008-11-21 01:30:54 -0500
committerIngo Molnar <mingo@elte.hu>2008-11-23 05:41:01 -0500
commit2bcd521a684cc94befbe2ce7d5b613c841b0d304 (patch)
tree63bc4dbc52defa27c8cac9e46dddadfcb36c1c7a /kernel/trace/Kconfig
parentbac28bfe42ba98ee67503f78984d1d5e1ebbbb78 (diff)
trace: profile all if conditionals
Impact: feature to profile if statements This patch adds a branch profiler for all if () statements. The results will be found in: /debugfs/tracing/profile_branch For example: miss hit % Function File Line ------- --------- - -------- ---- ---- 0 1 100 x86_64_start_reservations head64.c 127 0 1 100 copy_bootdata head64.c 69 1 0 0 x86_64_start_kernel head64.c 111 32 0 0 set_intr_gate desc.h 319 1 0 0 reserve_ebda_region head.c 51 1 0 0 reserve_ebda_region head.c 47 0 1 100 reserve_ebda_region head.c 42 0 0 X maxcpus main.c 165 Miss means the branch was not taken. Hit means the branch was taken. The percent is the percentage the branch was taken. This adds a significant amount of overhead and should only be used by those analyzing their system. Signed-off-by: Steven Rostedt <srostedt@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/trace/Kconfig')
-rw-r--r--kernel/trace/Kconfig16
1 files changed, 16 insertions, 0 deletions
diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
index 7e3548705708..61e8cca6ff45 100644
--- a/kernel/trace/Kconfig
+++ b/kernel/trace/Kconfig
@@ -173,6 +173,22 @@ config TRACE_BRANCH_PROFILING
173 173
174 Say N if unsure. 174 Say N if unsure.
175 175
176config PROFILE_ALL_BRANCHES
177 bool "Profile all if conditionals"
178 depends on TRACE_BRANCH_PROFILING
179 help
180 This tracer profiles all branch conditions. Every if ()
181 taken in the kernel is recorded whether it hit or miss.
182 The results will be displayed in:
183
184 /debugfs/tracing/profile_branch
185
186 This configuration, when enabled, will impose a great overhead
187 on the system. This should only be enabled when the system
188 is to be analyzed
189
190 Say N if unsure.
191
176config TRACING_BRANCHES 192config TRACING_BRANCHES
177 bool 193 bool
178 help 194 help