summaryrefslogtreecommitdiff
path: root/arch/Kconfig
diff options
context:
space:
mode:
authorRoland McGrath <roland@redhat.com>2008-07-25 19:45:57 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2008-07-26 12:00:09 -0700
commit1f5a4ad97a0e7b663d527ecc02aabe203d000d91 (patch)
tree83f01115a0c1abfa375d6a0edd5ddabd122676f5 /arch/Kconfig
parent828c365cc8b8d38c346fccb19fa80d28f2240831 (diff)
downloadlinux-3.10-1f5a4ad97a0e7b663d527ecc02aabe203d000d91.tar.gz
linux-3.10-1f5a4ad97a0e7b663d527ecc02aabe203d000d91.tar.bz2
linux-3.10-1f5a4ad97a0e7b663d527ecc02aabe203d000d91.zip
tracehook: CONFIG_HAVE_ARCH_TRACEHOOK
This adds the generic HAVE_ARCH_TRACEHOOK kconfig item. Each arch should add to some Kconfig file: select HAVE_ARCH_TRACEHOOK if the arch code uses all the latest hooks to enable newfangled tracing and debugging code. The comment in arch/Kconfig lists all the prerequisite arch support. When all these are available, setting HAVE_ARCH_TRACEHOOK will allow enabling any new features that depend on the modern arch interfaces. Signed-off-by: Roland McGrath <roland@redhat.com> Cc: Oleg Nesterov <oleg@tv-sign.ru> Reviewed-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/Kconfig')
-rw-r--r--arch/Kconfig18
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/Kconfig b/arch/Kconfig
index b0fabfa864f..364c6dadde0 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -59,6 +59,24 @@ config HAVE_KPROBES
config HAVE_KRETPROBES
def_bool n
+#
+# An arch should select this if it provides all these things:
+#
+# task_pt_regs() in asm/processor.h or asm/ptrace.h
+# arch_has_single_step() if there is hardware single-step support
+# arch_has_block_step() if there is hardware block-step support
+# arch_ptrace() and not #define __ARCH_SYS_PTRACE
+# compat_arch_ptrace() and #define __ARCH_WANT_COMPAT_SYS_PTRACE
+# asm/syscall.h supplying asm-generic/syscall.h interface
+# linux/regset.h user_regset interfaces
+# CORE_DUMP_USE_REGSET #define'd in linux/elf.h
+# TIF_SYSCALL_TRACE calls tracehook_report_syscall_{entry,exit}
+# TIF_NOTIFY_RESUME calls tracehook_notify_resume()
+# signal delivery calls tracehook_signal_handler()
+#
+config HAVE_ARCH_TRACEHOOK
+ def_bool n
+
config HAVE_DMA_ATTRS
def_bool n