diff options
| author | Catalin Marinas <catalin.marinas@arm.com> | 2012-10-08 19:28:16 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-10-09 03:22:14 -0400 |
| commit | 7ac57a89de958fbb5271dc504d0c25e34dbeec32 (patch) | |
| tree | 4243b7e9f702e9b48820b62d8572f9aeb6f1cf1c | |
| parent | 9b2a60c484715e2d2f07d8192fd9f18435cbc77c (diff) | |
Kconfig: clean up the "#if defined(arch)" list for exception-trace sysctl entry
Introduce SYSCTL_EXCEPTION_TRACE config option and selec it in the
architectures requiring support for the "exception-trace" debug_table
entry in kernel/sysctl.c.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Chris Metcalf <cmetcalf@tilera.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
| -rw-r--r-- | arch/arm64/Kconfig | 1 | ||||
| -rw-r--r-- | arch/powerpc/Kconfig | 1 | ||||
| -rw-r--r-- | arch/s390/Kconfig | 1 | ||||
| -rw-r--r-- | arch/sparc/Kconfig | 1 | ||||
| -rw-r--r-- | arch/tile/Kconfig | 1 | ||||
| -rw-r--r-- | arch/x86/Kconfig | 1 | ||||
| -rw-r--r-- | init/Kconfig | 5 | ||||
| -rw-r--r-- | kernel/sysctl.c | 3 |
8 files changed, 12 insertions, 2 deletions
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index a30856058742..7ff68c946073 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig | |||
| @@ -28,6 +28,7 @@ config ARM64 | |||
| 28 | select PERF_USE_VMALLOC | 28 | select PERF_USE_VMALLOC |
| 29 | select RTC_LIB | 29 | select RTC_LIB |
| 30 | select SPARSE_IRQ | 30 | select SPARSE_IRQ |
| 31 | select SYSCTL_EXCEPTION_TRACE | ||
| 31 | help | 32 | help |
| 32 | ARM 64-bit (AArch64) Linux support. | 33 | ARM 64-bit (AArch64) Linux support. |
| 33 | 34 | ||
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index 6a798a70a6d1..df7edb887a04 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig | |||
| @@ -99,6 +99,7 @@ config PPC | |||
| 99 | select HAVE_DYNAMIC_FTRACE | 99 | select HAVE_DYNAMIC_FTRACE |
| 100 | select HAVE_FUNCTION_TRACER | 100 | select HAVE_FUNCTION_TRACER |
| 101 | select HAVE_FUNCTION_GRAPH_TRACER | 101 | select HAVE_FUNCTION_GRAPH_TRACER |
| 102 | select SYSCTL_EXCEPTION_TRACE | ||
| 102 | select ARCH_WANT_OPTIONAL_GPIOLIB | 103 | select ARCH_WANT_OPTIONAL_GPIOLIB |
| 103 | select HAVE_IDE | 104 | select HAVE_IDE |
| 104 | select HAVE_IOREMAP_PROT | 105 | select HAVE_IOREMAP_PROT |
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig index 8c6d7986f6d2..ceff7aef2477 100644 --- a/arch/s390/Kconfig +++ b/arch/s390/Kconfig | |||
| @@ -68,6 +68,7 @@ config S390 | |||
| 68 | select HAVE_FTRACE_MCOUNT_RECORD | 68 | select HAVE_FTRACE_MCOUNT_RECORD |
| 69 | select HAVE_C_RECORDMCOUNT | 69 | select HAVE_C_RECORDMCOUNT |
| 70 | select HAVE_SYSCALL_TRACEPOINTS | 70 | select HAVE_SYSCALL_TRACEPOINTS |
| 71 | select SYSCTL_EXCEPTION_TRACE | ||
| 71 | select HAVE_DYNAMIC_FTRACE | 72 | select HAVE_DYNAMIC_FTRACE |
| 72 | select HAVE_FUNCTION_GRAPH_TRACER | 73 | select HAVE_FUNCTION_GRAPH_TRACER |
| 73 | select HAVE_REGS_AND_STACK_ACCESS_API | 74 | select HAVE_REGS_AND_STACK_ACCESS_API |
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig index 700a01adec3a..e184075877d7 100644 --- a/arch/sparc/Kconfig +++ b/arch/sparc/Kconfig | |||
| @@ -18,6 +18,7 @@ config SPARC | |||
| 18 | select HAVE_OPROFILE | 18 | select HAVE_OPROFILE |
| 19 | select HAVE_ARCH_KGDB if !SMP || SPARC64 | 19 | select HAVE_ARCH_KGDB if !SMP || SPARC64 |
| 20 | select HAVE_ARCH_TRACEHOOK | 20 | select HAVE_ARCH_TRACEHOOK |
| 21 | select SYSCTL_EXCEPTION_TRACE | ||
| 21 | select ARCH_WANT_OPTIONAL_GPIOLIB | 22 | select ARCH_WANT_OPTIONAL_GPIOLIB |
| 22 | select RTC_CLASS | 23 | select RTC_CLASS |
| 23 | select RTC_DRV_M48T59 | 24 | select RTC_DRV_M48T59 |
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig index df69d4296b4b..dc46490adca0 100644 --- a/arch/tile/Kconfig +++ b/arch/tile/Kconfig | |||
| @@ -7,6 +7,7 @@ config TILE | |||
| 7 | select HAVE_DMA_API_DEBUG | 7 | select HAVE_DMA_API_DEBUG |
| 8 | select HAVE_KVM if !TILEGX | 8 | select HAVE_KVM if !TILEGX |
| 9 | select GENERIC_FIND_FIRST_BIT | 9 | select GENERIC_FIND_FIRST_BIT |
| 10 | select SYSCTL_EXCEPTION_TRACE | ||
| 10 | select USE_GENERIC_SMP_HELPERS | 11 | select USE_GENERIC_SMP_HELPERS |
| 11 | select CC_OPTIMIZE_FOR_SIZE | 12 | select CC_OPTIMIZE_FOR_SIZE |
| 12 | select HAVE_DEBUG_KMEMLEAK | 13 | select HAVE_DEBUG_KMEMLEAK |
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 3fea1848d955..6119d6c7002e 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
| @@ -47,6 +47,7 @@ config X86 | |||
| 47 | select HAVE_FUNCTION_GRAPH_FP_TEST | 47 | select HAVE_FUNCTION_GRAPH_FP_TEST |
| 48 | select HAVE_FUNCTION_TRACE_MCOUNT_TEST | 48 | select HAVE_FUNCTION_TRACE_MCOUNT_TEST |
| 49 | select HAVE_SYSCALL_TRACEPOINTS | 49 | select HAVE_SYSCALL_TRACEPOINTS |
| 50 | select SYSCTL_EXCEPTION_TRACE | ||
| 50 | select HAVE_KVM | 51 | select HAVE_KVM |
| 51 | select HAVE_ARCH_KGDB | 52 | select HAVE_ARCH_KGDB |
| 52 | select HAVE_ARCH_TRACEHOOK | 53 | select HAVE_ARCH_TRACEHOOK |
diff --git a/init/Kconfig b/init/Kconfig index 38bab420bd9b..4c93533da42c 100644 --- a/init/Kconfig +++ b/init/Kconfig | |||
| @@ -1152,6 +1152,11 @@ config SYSCTL_SYSCALL | |||
| 1152 | 1152 | ||
| 1153 | If unsure say N here. | 1153 | If unsure say N here. |
| 1154 | 1154 | ||
| 1155 | config SYSCTL_EXCEPTION_TRACE | ||
| 1156 | bool | ||
| 1157 | help | ||
| 1158 | Enable support for /proc/sys/debug/exception-trace. | ||
| 1159 | |||
| 1155 | config KALLSYMS | 1160 | config KALLSYMS |
| 1156 | bool "Load all symbols for debugging/ksymoops" if EXPERT | 1161 | bool "Load all symbols for debugging/ksymoops" if EXPERT |
| 1157 | default y | 1162 | default y |
diff --git a/kernel/sysctl.c b/kernel/sysctl.c index c2a2f8084bad..26f65eaa01f9 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c | |||
| @@ -1549,8 +1549,7 @@ static struct ctl_table fs_table[] = { | |||
| 1549 | }; | 1549 | }; |
| 1550 | 1550 | ||
| 1551 | static struct ctl_table debug_table[] = { | 1551 | static struct ctl_table debug_table[] = { |
| 1552 | #if defined(CONFIG_X86) || defined(CONFIG_PPC) || defined(CONFIG_SPARC) || \ | 1552 | #ifdef CONFIG_SYSCTL_EXCEPTION_TRACE |
| 1553 | defined(CONFIG_S390) || defined(CONFIG_TILE) || defined(CONFIG_ARM64) | ||
| 1554 | { | 1553 | { |
| 1555 | .procname = "exception-trace", | 1554 | .procname = "exception-trace", |
| 1556 | .data = &show_unhandled_signals, | 1555 | .data = &show_unhandled_signals, |
