Browse Source

Combine instrumentation menus in kernel/Kconfig.instrumentation

Quoting Randy:

"It seems sad that this patch sources Kconfig.marker, a 7-line file,
20-something times.  Yes, you (we) don't want to put those 7 lines into
20-something different files, so sourcing is the right thing.

However, what you did for avr32 seems more on the right track to me: make
_one_ Instrumentation support menu that includes PROFILING, OPROFILE, KPROBES,
and MARKERS and then use (source) that in all of the arches."

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Mathieu Desnoyers 17 years ago
parent
commit
09cadedbdc

+ 1 - 1
arch/alpha/Kconfig

@@ -654,7 +654,7 @@ source "drivers/Kconfig"
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
-source "arch/alpha/oprofile/Kconfig"
+source "kernel/Kconfig.instrumentation"
 
 
 source "arch/alpha/Kconfig.debug"
 source "arch/alpha/Kconfig.debug"
 
 

+ 0 - 23
arch/alpha/oprofile/Kconfig

@@ -1,23 +0,0 @@
-
-menu "Profiling support"
-	depends on EXPERIMENTAL
-
-config PROFILING
-	bool "Profiling support (EXPERIMENTAL)"
-	help
-	  Say Y here to enable the extended profiling support mechanisms used
-	  by profilers such as OProfile.
-	  
-
-config OPROFILE
-	tristate "OProfile system profiling (EXPERIMENTAL)"
-	depends on PROFILING
-	help
-	  OProfile is a profiling system capable of profiling the
-	  whole system, include the kernel, kernel modules, libraries,
-	  and applications.
-
-	  If unsure, say N.
-
-endmenu
-

+ 1 - 1
arch/arm/Kconfig

@@ -1068,7 +1068,7 @@ endmenu
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
-source "arch/arm/oprofile/Kconfig"
+source "kernel/Kconfig.instrumentation"
 
 
 source "arch/arm/Kconfig.debug"
 source "arch/arm/Kconfig.debug"
 
 

+ 0 - 42
arch/arm/oprofile/Kconfig

@@ -1,42 +0,0 @@
-
-menu "Profiling support"
-	depends on EXPERIMENTAL
-
-config PROFILING
-	bool "Profiling support (EXPERIMENTAL)"
-	help
-	  Say Y here to enable the extended profiling support mechanisms used
-	  by profilers such as OProfile.
-
-
-config OPROFILE
-	tristate "OProfile system profiling (EXPERIMENTAL)"
-	depends on PROFILING
-	help
-	  OProfile is a profiling system capable of profiling the
-	  whole system, include the kernel, kernel modules, libraries,
-	  and applications.
-
-	  If unsure, say N.
-
-if OPROFILE
-
-config OPROFILE_ARMV6
-	bool
-	depends on CPU_V6 && !SMP
-	default y
-	select OPROFILE_ARM11_CORE
-
-config OPROFILE_MPCORE
-	bool
-	depends on CPU_V6 && SMP
-	default y
-	select OPROFILE_ARM11_CORE
-
-config OPROFILE_ARM11_CORE
-	bool
-
-endif
-
-endmenu
-

+ 1 - 1
arch/blackfin/Kconfig

@@ -1012,7 +1012,7 @@ source "drivers/Kconfig"
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
-source "arch/blackfin/oprofile/Kconfig"
+source "kernel/Kconfig.instrumentation"
 
 
 menu "Kernel hacking"
 menu "Kernel hacking"
 
 

+ 0 - 29
arch/blackfin/oprofile/Kconfig

@@ -1,29 +0,0 @@
-menu "Profiling support"
-depends on EXPERIMENTAL
-
-config PROFILING
-	bool "Profiling support (EXPERIMENTAL)"
-	help
-	  Say Y here to enable the extended profiling support mechanisms used
-	  by profilers such as OProfile.
-
-config OPROFILE
-	tristate "OProfile system profiling (EXPERIMENTAL)"
-	depends on PROFILING
-	help
-	  OProfile is a profiling system capable of profiling the
-	  whole system, include the kernel, kernel modules, libraries,
-	  and applications.
-
-	  If unsure, say N.
-
-config HARDWARE_PM
-	tristate "Hardware Performance Monitor Profiling"
-	depends on PROFILING
-	help
-	  take use of hardware performance monitor to profiling the kernel
-	  and application.
-
-	  If unsure, say N.
-
-endmenu

+ 2 - 0
arch/cris/Kconfig

@@ -196,6 +196,8 @@ source "sound/Kconfig"
 
 
 source "drivers/usb/Kconfig"
 source "drivers/usb/Kconfig"
 
 
+source "kernel/Kconfig.instrumentation"
+
 source "arch/cris/Kconfig.debug"
 source "arch/cris/Kconfig.debug"
 
 
 source "security/Kconfig"
 source "security/Kconfig"

+ 2 - 0
arch/frv/Kconfig

@@ -375,6 +375,8 @@ source "drivers/Kconfig"
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
+source "kernel/Kconfig.instrumentation"
+
 source "arch/frv/Kconfig.debug"
 source "arch/frv/Kconfig.debug"
 
 
 source "security/Kconfig"
 source "security/Kconfig"

+ 2 - 0
arch/h8300/Kconfig

@@ -223,6 +223,8 @@ endmenu
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
+source "kernel/Kconfig.instrumentation"
+
 source "arch/h8300/Kconfig.debug"
 source "arch/h8300/Kconfig.debug"
 
 
 source "security/Kconfig"
 source "security/Kconfig"

+ 0 - 25
arch/i386/Kconfig

@@ -1256,31 +1256,6 @@ source "drivers/Kconfig"
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
-menuconfig INSTRUMENTATION
-	bool "Instrumentation Support"
-	default y
-	---help---
-	  Say Y here to get to see options related to performance measurement,
-	  debugging, and testing. This option alone does not add any kernel code.
-
-	  If you say N, all options in this submenu will be skipped and disabled.
-
-if INSTRUMENTATION
-
-source "arch/x86/oprofile/Kconfig"
-
-config KPROBES
-	bool "Kprobes"
-	depends on KALLSYMS && MODULES
-	help
-	  Kprobes allows you to trap at almost any kernel address and
-	  execute a callback function.  register_kprobe() establishes
-	  a probepoint and specifies the callback.  Kprobes is useful
-	  for kernel debugging, non-intrusive instrumentation and testing.
-	  If in doubt, say "N".
-
-endif # INSTRUMENTATION
-
 source "arch/i386/Kconfig.debug"
 source "arch/i386/Kconfig.debug"
 
 
 source "security/Kconfig"
 source "security/Kconfig"

+ 1 - 14
arch/ia64/Kconfig

@@ -592,20 +592,7 @@ config IRQ_PER_CPU
 
 
 source "arch/ia64/hp/sim/Kconfig"
 source "arch/ia64/hp/sim/Kconfig"
 
 
-menu "Instrumentation Support"
-
-source "arch/ia64/oprofile/Kconfig"
-
-config KPROBES
-	bool "Kprobes"
-	depends on KALLSYMS && MODULES
-	help
-	  Kprobes allows you to trap at almost any kernel address and
-	  execute a callback function.  register_kprobe() establishes
-	  a probepoint and specifies the callback.  Kprobes is useful
-	  for kernel debugging, non-intrusive instrumentation and testing.
-	  If in doubt, say "N".
-endmenu
+source "kernel/Kconfig.instrumentation"
 
 
 source "arch/ia64/Kconfig.debug"
 source "arch/ia64/Kconfig.debug"
 
 

+ 0 - 20
arch/ia64/oprofile/Kconfig

@@ -1,20 +0,0 @@
-config PROFILING
-	bool "Profiling support (EXPERIMENTAL)"
-	help
-	  Say Y here to enable the extended profiling support mechanisms used
-	  by profilers such as OProfile.
-
-config OPROFILE
-	tristate "OProfile system profiling (EXPERIMENTAL)"
-	depends on PROFILING
-	help
-	  OProfile is a profiling system capable of profiling the
-	  whole system, include the kernel, kernel modules, libraries,
-	  and applications.
-
-	  Due to firmware bugs, you may need to use the "nohalt" boot
-	  option if you're using OProfile with the hardware performance
-	  counters.
-
-	  If unsure, say N.
-

+ 1 - 1
arch/m32r/Kconfig

@@ -426,7 +426,7 @@ source "drivers/Kconfig"
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
-source "arch/m32r/oprofile/Kconfig"
+source "kernel/Kconfig.instrumentation"
 
 
 source "arch/m32r/Kconfig.debug"
 source "arch/m32r/Kconfig.debug"
 
 

+ 0 - 23
arch/m32r/oprofile/Kconfig

@@ -1,23 +0,0 @@
-
-menu "Profiling support"
-	depends on EXPERIMENTAL
-
-config PROFILING
-	bool "Profiling support (EXPERIMENTAL)"
-	help
-	  Say Y here to enable the extended profiling support mechanisms used
-	  by profilers such as OProfile.
-
-
-config OPROFILE
-	tristate "OProfile system profiling (EXPERIMENTAL)"
-	depends on PROFILING
-	help
-	  OProfile is a profiling system capable of profiling the
-	  whole system, include the kernel, kernel modules, libraries,
-	  and applications.
-
-	  If unsure, say N.
-
-endmenu
-

+ 2 - 0
arch/m68k/Kconfig

@@ -683,6 +683,8 @@ endmenu
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
+source "kernel/Kconfig.instrumentation"
+
 source "arch/m68k/Kconfig.debug"
 source "arch/m68k/Kconfig.debug"
 
 
 source "security/Kconfig"
 source "security/Kconfig"

+ 2 - 0
arch/m68knommu/Kconfig

@@ -696,6 +696,8 @@ source "drivers/Kconfig"
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
+source "kernel/Kconfig.instrumentation"
+
 source "arch/m68knommu/Kconfig.debug"
 source "arch/m68knommu/Kconfig.debug"
 
 
 source "security/Kconfig"
 source "security/Kconfig"

+ 1 - 1
arch/mips/Kconfig

@@ -2005,7 +2005,7 @@ source "drivers/Kconfig"
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
-source "arch/mips/oprofile/Kconfig"
+source "kernel/Kconfig.instrumentation"
 
 
 source "arch/mips/Kconfig.debug"
 source "arch/mips/Kconfig.debug"
 
 

+ 0 - 23
arch/mips/oprofile/Kconfig

@@ -1,23 +0,0 @@
-
-menu "Profiling support"
-	depends on EXPERIMENTAL
-
-config PROFILING
-	bool "Profiling support (EXPERIMENTAL)"
-	help
-	  Say Y here to enable the extended profiling support mechanisms used
-	  by profilers such as OProfile.
-
-
-config OPROFILE
-	tristate "OProfile system profiling (EXPERIMENTAL)"
-	depends on PROFILING && !MIPS_MT_SMTC && EXPERIMENTAL
-	help
-	  OProfile is a profiling system capable of profiling the
-	  whole system, include the kernel, kernel modules, libraries,
-	  and applications.
-
-	  If unsure, say N.
-
-endmenu
-

+ 1 - 1
arch/parisc/Kconfig

@@ -267,7 +267,7 @@ source "drivers/Kconfig"
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
-source "arch/parisc/oprofile/Kconfig"
+source "kernel/Kconfig.instrumentation"
 
 
 source "arch/parisc/Kconfig.debug"
 source "arch/parisc/Kconfig.debug"
 
 

+ 0 - 23
arch/parisc/oprofile/Kconfig

@@ -1,23 +0,0 @@
-
-menu "Profiling support"
-	depends on EXPERIMENTAL
-
-config PROFILING
-	bool "Profiling support (EXPERIMENTAL)"
-	help
-	  Say Y here to enable the extended profiling support mechanisms used
-	  by profilers such as OProfile.
-	  
-
-config OPROFILE
-	tristate "OProfile system profiling (EXPERIMENTAL)"
-	depends on PROFILING
-	help
-	  OProfile is a profiling system capable of profiling the
-	  whole system, include the kernel, kernel modules, libraries,
-	  and applications.
-
-	  If unsure, say N.
-
-endmenu
-

+ 1 - 14
arch/powerpc/Kconfig

@@ -669,20 +669,7 @@ source "arch/powerpc/sysdev/qe_lib/Kconfig"
 
 
 source "lib/Kconfig"
 source "lib/Kconfig"
 
 
-menu "Instrumentation Support"
-
-source "arch/powerpc/oprofile/Kconfig"
-
-config KPROBES
-	bool "Kprobes"
-	depends on !BOOKE && !4xx && KALLSYMS && MODULES
-	help
-	  Kprobes allows you to trap at almost any kernel address and
-	  execute a callback function.  register_kprobe() establishes
-	  a probepoint and specifies the callback.  Kprobes is useful
-	  for kernel debugging, non-intrusive instrumentation and testing.
-	  If in doubt, say "N".
-endmenu
+source "kernel/Kconfig.instrumentation"
 
 
 source "arch/powerpc/Kconfig.debug"
 source "arch/powerpc/Kconfig.debug"
 
 

+ 0 - 24
arch/powerpc/oprofile/Kconfig

@@ -1,24 +0,0 @@
-config PROFILING
-	bool "Profiling support (EXPERIMENTAL)"
-	help
-	  Say Y here to enable the extended profiling support mechanisms used
-	  by profilers such as OProfile.
-
-
-config OPROFILE
-	tristate "OProfile system profiling (EXPERIMENTAL)"
-	depends on PROFILING
-	help
-	  OProfile is a profiling system capable of profiling the
-	  whole system, include the kernel, kernel modules, libraries,
-	  and applications.
-
-	  If unsure, say N.
-
-config OPROFILE_CELL
-	bool "OProfile for Cell Broadband Engine"
-	depends on (SPU_FS = y && OPROFILE = m) || (SPU_FS = y && OPROFILE = y) || (SPU_FS = m && OPROFILE = m)
-	default y
-	help
-	  Profiling of Cell BE SPUs requires special support enabled
-	  by this option.

+ 1 - 1
arch/ppc/Kconfig

@@ -1317,7 +1317,7 @@ endmenu
 
 
 source "lib/Kconfig"
 source "lib/Kconfig"
 
 
-source "arch/powerpc/oprofile/Kconfig"
+source "kernel/Kconfig.instrumentation"
 
 
 source "arch/ppc/Kconfig.debug"
 source "arch/ppc/Kconfig.debug"
 
 

+ 1 - 15
arch/s390/Kconfig

@@ -529,21 +529,7 @@ source "drivers/Kconfig"
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
-menu "Instrumentation Support"
-
-source "arch/s390/oprofile/Kconfig"
-
-config KPROBES
-	bool "Kprobes (EXPERIMENTAL)"
-	depends on EXPERIMENTAL && MODULES
-	help
-	  Kprobes allows you to trap at almost any kernel address and
-	  execute a callback function.	register_kprobe() establishes
-	  a probepoint and specifies the callback.  Kprobes is useful
-	  for kernel debugging, non-intrusive instrumentation and testing.
-	  If in doubt, say "N".
-
-endmenu
+source "kernel/Kconfig.instrumentation"
 
 
 source "arch/s390/Kconfig.debug"
 source "arch/s390/Kconfig.debug"
 
 

+ 0 - 22
arch/s390/oprofile/Kconfig

@@ -1,22 +0,0 @@
-
-menu "Profiling support"
-
-config PROFILING
-	bool "Profiling support"
-	help
-	  Say Y here to enable profiling support mechanisms used by
-	  profilers such as readprofile or OProfile.
-
-
-config OPROFILE
-	tristate "OProfile system profiling"
-	depends on PROFILING
-	help
-	  OProfile is a profiling system capable of profiling the
-	  whole system, include the kernel, kernel modules, libraries,
-	  and applications.
-
-	  If unsure, say N.
-
-endmenu
-

+ 1 - 1
arch/sh/Kconfig

@@ -758,7 +758,7 @@ source "drivers/Kconfig"
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
-source "arch/sh/oprofile/Kconfig"
+source "kernel/Kconfig.instrumentation"
 
 
 source "arch/sh/Kconfig.debug"
 source "arch/sh/Kconfig.debug"
 
 

+ 0 - 23
arch/sh/oprofile/Kconfig

@@ -1,23 +0,0 @@
-
-menu "Profiling support"
-	depends on EXPERIMENTAL
-
-config PROFILING
-	bool "Profiling support (EXPERIMENTAL)"
-	help
-	  Say Y here to enable the extended profiling support mechanisms used
-	  by profilers such as OProfile.
-	  
-
-config OPROFILE
-	tristate "OProfile system profiling (EXPERIMENTAL)"
-	depends on PROFILING
-	help
-	  OProfile is a profiling system capable of profiling the
-	  whole system, include the kernel, kernel modules, libraries,
-	  and applications.
-
-	  If unsure, say N.
-
-endmenu
-

+ 1 - 1
arch/sh64/Kconfig

@@ -284,7 +284,7 @@ source "drivers/Kconfig"
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
-source "arch/sh64/oprofile/Kconfig"
+source "kernel/Kconfig.instrumentation"
 
 
 source "arch/sh64/Kconfig.debug"
 source "arch/sh64/Kconfig.debug"
 
 

+ 0 - 23
arch/sh64/oprofile/Kconfig

@@ -1,23 +0,0 @@
-
-menu "Profiling support"
-	depends on EXPERIMENTAL
-
-config PROFILING
-	bool "Profiling support (EXPERIMENTAL)"
-	help
-	  Say Y here to enable the extended profiling support mechanisms used
-	  by profilers such as OProfile.
-
-
-config OPROFILE
-	tristate "OProfile system profiling (EXPERIMENTAL)"
-	depends on PROFILING
-	help
-	  OProfile is a profiling system capable of profiling the
-	  whole system, include the kernel, kernel modules, libraries,
-	  and applications.
-
-	  If unsure, say N.
-
-endmenu
-

+ 1 - 5
arch/sparc/Kconfig

@@ -320,11 +320,7 @@ endmenu
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
-menu "Instrumentation Support"
-
-source "arch/sparc/oprofile/Kconfig"
-
-endmenu
+source "kernel/Kconfig.instrumentation"
 
 
 source "arch/sparc/Kconfig.debug"
 source "arch/sparc/Kconfig.debug"
 
 

+ 0 - 17
arch/sparc/oprofile/Kconfig

@@ -1,17 +0,0 @@
-config PROFILING
-	bool "Profiling support (EXPERIMENTAL)"
-	help
-	  Say Y here to enable the extended profiling support mechanisms used
-	  by profilers such as OProfile.
-	  
-
-config OPROFILE
-	tristate "OProfile system profiling (EXPERIMENTAL)"
-	depends on PROFILING
-	help
-	  OProfile is a profiling system capable of profiling the
-	  whole system, include the kernel, kernel modules, libraries,
-	  and applications.
-
-	  If unsure, say N.
-

+ 1 - 14
arch/sparc64/Kconfig

@@ -460,20 +460,7 @@ source "drivers/fc4/Kconfig"
 
 
 source "fs/Kconfig"
 source "fs/Kconfig"
 
 
-menu "Instrumentation Support"
-
-source "arch/sparc64/oprofile/Kconfig"
-
-config KPROBES
-	bool "Kprobes (EXPERIMENTAL)"
-	depends on KALLSYMS && EXPERIMENTAL && MODULES
-	help
-	  Kprobes allows you to trap at almost any kernel address and
-	  execute a callback function.  register_kprobe() establishes
-	  a probepoint and specifies the callback.  Kprobes is useful
-	  for kernel debugging, non-intrusive instrumentation and testing.
-	  If in doubt, say "N".
-endmenu
+source "kernel/Kconfig.instrumentation"
 
 
 source "arch/sparc64/Kconfig.debug"
 source "arch/sparc64/Kconfig.debug"
 
 

+ 0 - 17
arch/sparc64/oprofile/Kconfig

@@ -1,17 +0,0 @@
-config PROFILING
-	bool "Profiling support (EXPERIMENTAL)"
-	help
-	  Say Y here to enable the extended profiling support mechanisms used
-	  by profilers such as OProfile.
-	  
-
-config OPROFILE
-	tristate "OProfile system profiling (EXPERIMENTAL)"
-	depends on PROFILING
-	help
-	  OProfile is a profiling system capable of profiling the
-	  whole system, include the kernel, kernel modules, libraries,
-	  and applications.
-
-	  If unsure, say N.
-

+ 2 - 0
arch/um/Kconfig

@@ -289,4 +289,6 @@ config INPUT
 	bool
 	bool
 	default n
 	default n
 
 
+source "kernel/Kconfig.instrumentation"
+
 source "arch/um/Kconfig.debug"
 source "arch/um/Kconfig.debug"

+ 2 - 0
arch/v850/Kconfig

@@ -331,6 +331,8 @@ source "sound/Kconfig"
 
 
 source "drivers/usb/Kconfig"
 source "drivers/usb/Kconfig"
 
 
+source "kernel/Kconfig.instrumentation"
+
 source "arch/v850/Kconfig.debug"
 source "arch/v850/Kconfig.debug"
 
 
 source "security/Kconfig"
 source "security/Kconfig"

+ 0 - 15
arch/x86_64/Kconfig

@@ -799,21 +799,6 @@ source "drivers/firmware/Kconfig"
 
 
 source fs/Kconfig
 source fs/Kconfig
 
 
-menu "Instrumentation Support"
-
-source "arch/x86/oprofile/Kconfig"
-
-config KPROBES
-	bool "Kprobes"
-	depends on KALLSYMS && MODULES
-	help
-	  Kprobes allows you to trap at almost any kernel address and
-	  execute a callback function.  register_kprobe() establishes
-	  a probepoint and specifies the callback.  Kprobes is useful
-	  for kernel debugging, non-intrusive instrumentation and testing.
-	  If in doubt, say "N".
-endmenu
-
 source "arch/x86_64/Kconfig.debug"
 source "arch/x86_64/Kconfig.debug"
 
 
 source "security/Kconfig"
 source "security/Kconfig"

+ 2 - 0
arch/xtensa/Kconfig

@@ -251,6 +251,8 @@ config EMBEDDED_RAMDISK_IMAGE
 	  provide one yourself.
 	  provide one yourself.
 endmenu
 endmenu
 
 
+source "kernel/Kconfig.instrumentation"
+
 source "arch/xtensa/Kconfig.debug"
 source "arch/xtensa/Kconfig.debug"
 
 
 source "security/Kconfig"
 source "security/Kconfig"

+ 43 - 0
kernel/Kconfig.instrumentation

@@ -0,0 +1,43 @@
+menuconfig INSTRUMENTATION
+	bool "Instrumentation Support"
+	default y
+	---help---
+	  Say Y here to get to see options related to performance measurement,
+	  system-wide debugging, and testing. This option alone does not add any
+	  kernel code.
+
+	  If you say N, all options in this submenu will be skipped and
+	  disabled. If you're trying to debug the kernel itself, go see the
+	  Kernel Hacking menu.
+
+if INSTRUMENTATION
+
+config PROFILING
+	bool "Profiling support (EXPERIMENTAL)"
+	help
+	  Say Y here to enable the extended profiling support mechanisms used
+	  by profilers such as OProfile.
+
+config OPROFILE
+	tristate "OProfile system profiling (EXPERIMENTAL)"
+	depends on PROFILING
+	depends on ALPHA || ARM || BLACKFIN || X86_32 || IA64 || M32R || MIPS || PARISC || PPC || S390 || SUPERH || SPARC || X86_64
+	help
+	  OProfile is a profiling system capable of profiling the
+	  whole system, include the kernel, kernel modules, libraries,
+	  and applications.
+
+	  If unsure, say N.
+
+config KPROBES
+	bool "Kprobes"
+	depends on KALLSYMS && MODULES
+	depends on X86_32 || IA64 || PPC || S390 || SPARC64 || X86_64 || AVR32
+	help
+	  Kprobes allows you to trap at almost any kernel address and
+	  execute a callback function.  register_kprobe() establishes
+	  a probepoint and specifies the callback.  Kprobes is useful
+	  for kernel debugging, non-intrusive instrumentation and testing.
+	  If in doubt, say "N".
+
+endif # INSTRUMENTATION