tracing: clean up menu
Ingo Molnar [Thu, 5 Mar 2009 20:19:55 +0000 (21:19 +0100)]
Clean up menu structure, introduce TRACING_SUPPORT switch that signals
whether an architecture supports various instrumentation mechanisms.

Signed-off-by: Ingo Molnar <mingo@elte.hu>

arch/Kconfig
kernel/trace/Kconfig

index 550dab2..a092dc7 100644 (file)
@@ -6,6 +6,7 @@ config OPROFILE
        tristate "OProfile system profiling (EXPERIMENTAL)"
        depends on PROFILING
        depends on HAVE_OPROFILE
+       depends on TRACING_SUPPORT
        select TRACING
        select RING_BUFFER
        help
index 999c6a2..5d733da 100644 (file)
@@ -53,12 +53,22 @@ config TRACING
        select TRACEPOINTS
        select NOP_TRACER
 
+#
+# Minimum requirements an architecture has to meet for us to
+# be able to offer generic tracing facilities:
+#
+config TRACING_SUPPORT
+       bool
+       depends on TRACE_IRQFLAGS_SUPPORT
+       depends on STACKTRACE_SUPPORT
+
+if TRACING_SUPPORT
+
 menu "Tracers"
 
 config FUNCTION_TRACER
        bool "Kernel Function Tracer"
        depends on HAVE_FUNCTION_TRACER
-       depends on DEBUG_KERNEL
        select FRAME_POINTER
        select KALLSYMS
        select TRACING
@@ -91,7 +101,6 @@ config IRQSOFF_TRACER
        default n
        depends on TRACE_IRQFLAGS_SUPPORT
        depends on GENERIC_TIME
-       depends on DEBUG_KERNEL
        select TRACE_IRQFLAGS
        select TRACING
        select TRACER_MAX_TRACE
@@ -114,7 +123,6 @@ config PREEMPT_TRACER
        default n
        depends on GENERIC_TIME
        depends on PREEMPT
-       depends on DEBUG_KERNEL
        select TRACING
        select TRACER_MAX_TRACE
        help
@@ -142,7 +150,6 @@ config SYSPROF_TRACER
 
 config SCHED_TRACER
        bool "Scheduling Latency Tracer"
-       depends on DEBUG_KERNEL
        select TRACING
        select CONTEXT_SWITCH_TRACER
        select TRACER_MAX_TRACE
@@ -152,7 +159,6 @@ config SCHED_TRACER
 
 config CONTEXT_SWITCH_TRACER
        bool "Trace process context switches"
-       depends on DEBUG_KERNEL
        select TRACING
        select MARKERS
        help
@@ -161,7 +167,6 @@ config CONTEXT_SWITCH_TRACER
 
 config EVENT_TRACER
        bool "Trace various events in the kernel"
-       depends on DEBUG_KERNEL
        select TRACING
        help
          This tracer hooks to various trace points in the kernel
@@ -170,7 +175,6 @@ config EVENT_TRACER
 
 config BOOT_TRACER
        bool "Trace boot initcalls"
-       depends on DEBUG_KERNEL
        select TRACING
        select CONTEXT_SWITCH_TRACER
        help
@@ -188,7 +192,6 @@ config BOOT_TRACER
 
 config TRACE_BRANCH_PROFILING
        bool "Trace likely/unlikely profiler"
-       depends on DEBUG_KERNEL
        select TRACING
        help
          This tracer profiles all the the likely and unlikely macros
@@ -241,7 +244,6 @@ config BRANCH_TRACER
 
 config POWER_TRACER
        bool "Trace power consumption behavior"
-       depends on DEBUG_KERNEL
        depends on X86
        select TRACING
        help
@@ -253,7 +255,6 @@ config POWER_TRACER
 config STACK_TRACER
        bool "Trace max stack"
        depends on HAVE_FUNCTION_TRACER
-       depends on DEBUG_KERNEL
        select FUNCTION_TRACER
        select STACKTRACE
        select KALLSYMS
@@ -343,7 +344,6 @@ config DYNAMIC_FTRACE
        bool "enable/disable ftrace tracepoints dynamically"
        depends on FUNCTION_TRACER
        depends on HAVE_DYNAMIC_FTRACE
-       depends on DEBUG_KERNEL
        default y
        help
          This option will modify all the calls to ftrace dynamically
@@ -369,7 +369,7 @@ config FTRACE_SELFTEST
 
 config FTRACE_STARTUP_TEST
        bool "Perform a startup test on ftrace"
-       depends on TRACING && DEBUG_KERNEL
+       depends on TRACING
        select FTRACE_SELFTEST
        help
          This option performs a series of startup tests on ftrace. On bootup
@@ -379,7 +379,7 @@ config FTRACE_STARTUP_TEST
 
 config MMIOTRACE
        bool "Memory mapped IO tracing"
-       depends on HAVE_MMIOTRACE_SUPPORT && DEBUG_KERNEL && PCI
+       depends on HAVE_MMIOTRACE_SUPPORT && PCI
        select TRACING
        help
          Mmiotrace traces Memory Mapped I/O access and is meant for
@@ -401,3 +401,6 @@ config MMIOTRACE_TEST
          Say N, unless you absolutely know what you are doing.
 
 endmenu
+
+endif # TRACING_SUPPORT
+