#
# DTrace Configuration
# Copyright (C) 2010, 2011, 2012 Oracle Corporation
#

menuconfig DTRACE
	bool "DTrace (Dynamic Tracing) Support"
	default y
	depends on ARCH_SUPPORTS_DTRACE
	depends on !DEBUG_LOCK_ALLOC
	select KALLSYMS
	select WAITFD
	select CTF if (!DT_DISABLE_CTF)
	select STRIP_ASM_SYMS if (!DT_DISABLE_CTF)
	select DEBUG_INFO if (!DT_DISABLE_CTF)
	help
	  To be written.  Test 3.

if DTRACE

config DT_CORE
	tristate "DTrace core"
	default m
	help
	  To be written.

if DT_CORE

config DT_FASTTRAP
	tristate "Fasttrap Tracing"
	default m
	depends on ARCH_SUPPORTS_UPROBES
	select UPROBE_EVENT
	help
	  To be written.

config DT_PROFILE
	tristate "Profile Interrupt Tracing"
	default m
	help
	  To be written.

config DT_SDT
	tristate "Statically Defined Tracing"
	default m
	select KALLSYMS
	help
	  To be written.

config DT_SYSTRACE
	tristate "System Call Tracing"
	default m
	select FTRACE
	select FTRACE_SYSCALLS
	help
	  To be written.

config DT_DT_TEST
	tristate "DTrace Test Probe"
	default m
	help
	  To be written.

config DT_DT_PERF
	tristate "DTrace Performance Test Probe"
	default m
	help
	  To be written.

config DT_DEBUG
	bool "DTrace debugging"
	default m
	help
	  This controls the inclusion of various piece of code that perform
	  internal checks within the DTrace core.  It also enables all the
	  assertions within the DTrace code.

if DT_DEBUG

config DT_DEBUG_MUTEX
	bool "DTrace mutex debugging"
	default n
	help
	  This controls the use of DTrace specific wrappers to output debug
	  messages whenever a mutex is locked or unlocked within the DTrace
	  code (core and providers).

config DT_DISABLE_CTF
	bool "Disable CTF generation"
	default n
	help
	  Disables the time-consuming generation of CTF information.  This is
	  quite a time-consuming process and may not always be desirable.
	  (The modules will still contain CTF sections, but they will be
	  empty.)

endif	# DT_DEBUG

endif	# DT_CORE

endif   #DTRACE
