Add HAVE_OPROFILE
Linus: On the per-architecture side, I do think it would be better to *not* have internal architecture knowledge in a generic file, and as such a line like depends on X86_32 || IA64 || PPC || S390 || SPARC64 || X86_64 || AVR32 really shouldn't exist in a file like kernel/Kconfig.instrumentation. It would be much better to do depends on ARCH_SUPPORTS_KPROBES in that generic file, and then architectures that do support it would just have a bool ARCH_SUPPORTS_KPROBES default y in *their* architecture files. That would seem to be much more logical, and is readable both for arch maintainers *and* for people who have no clue - and don't care - about which architecture is supposed to support which interface... Changelog: Actually, I know I gave this as the magic incantation, but now that I see it, I realize that I should have told you to just use config ARCH_SUPPORTS_KPROBES def_bool y instead, which is a bit denser. We seem to use both kinds of syntax for these things, but this is really what "def_bool" is there for... Changelog : - Moving to HAVE_*. - Add AVR32 oprofile. Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Haavard Skinnemoen <hskinnemoen@atmel.com> Cc: David Howells <dhowells@redhat.com> Cc: Jeff Dike <jdike@addtoit.com> Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
This commit is contained in:
Родитель
fb32e03fdc
Коммит
42d4b839c8
|
@ -5,6 +5,7 @@
|
||||||
config ALPHA
|
config ALPHA
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
select HAVE_OPROFILE
|
||||||
help
|
help
|
||||||
The Alpha is a 64-bit general-purpose processor designed and
|
The Alpha is a 64-bit general-purpose processor designed and
|
||||||
marketed by the Digital Equipment Corporation of blessed memory,
|
marketed by the Digital Equipment Corporation of blessed memory,
|
||||||
|
|
|
@ -10,6 +10,7 @@ config ARM
|
||||||
default y
|
default y
|
||||||
select RTC_LIB
|
select RTC_LIB
|
||||||
select SYS_SUPPORTS_APM_EMULATION
|
select SYS_SUPPORTS_APM_EMULATION
|
||||||
|
select HAVE_OPROFILE
|
||||||
help
|
help
|
||||||
The ARM series is a line of low-power-consumption RISC chip designs
|
The ARM series is a line of low-power-consumption RISC chip designs
|
||||||
licensed by ARM Ltd and targeted at embedded applications and
|
licensed by ARM Ltd and targeted at embedded applications and
|
||||||
|
|
|
@ -10,6 +10,7 @@ config AVR32
|
||||||
# With EMBEDDED=n, we get lots of stuff automatically selected
|
# With EMBEDDED=n, we get lots of stuff automatically selected
|
||||||
# that we usually don't need on AVR32.
|
# that we usually don't need on AVR32.
|
||||||
select EMBEDDED
|
select EMBEDDED
|
||||||
|
select HAVE_OPROFILE
|
||||||
help
|
help
|
||||||
AVR32 is a high-performance 32-bit RISC microprocessor core,
|
AVR32 is a high-performance 32-bit RISC microprocessor core,
|
||||||
designed for cost-sensitive embedded applications, with particular
|
designed for cost-sensitive embedded applications, with particular
|
||||||
|
@ -54,9 +55,6 @@ config ARCH_HAS_ILOG2_U32
|
||||||
config ARCH_HAS_ILOG2_U64
|
config ARCH_HAS_ILOG2_U64
|
||||||
def_bool n
|
def_bool n
|
||||||
|
|
||||||
config ARCH_SUPPORTS_OPROFILE
|
|
||||||
def_bool y
|
|
||||||
|
|
||||||
config GENERIC_HWEIGHT
|
config GENERIC_HWEIGHT
|
||||||
def_bool y
|
def_bool y
|
||||||
|
|
||||||
|
|
|
@ -24,6 +24,7 @@ config RWSEM_XCHGADD_ALGORITHM
|
||||||
config BLACKFIN
|
config BLACKFIN
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
select HAVE_OPROFILE
|
||||||
|
|
||||||
config ZONE_DMA
|
config ZONE_DMA
|
||||||
bool
|
bool
|
||||||
|
|
|
@ -15,6 +15,7 @@ config IA64
|
||||||
select ACPI if (!IA64_HP_SIM)
|
select ACPI if (!IA64_HP_SIM)
|
||||||
select PM if (!IA64_HP_SIM)
|
select PM if (!IA64_HP_SIM)
|
||||||
select ARCH_SUPPORTS_MSI
|
select ARCH_SUPPORTS_MSI
|
||||||
|
select HAVE_OPROFILE
|
||||||
default y
|
default y
|
||||||
help
|
help
|
||||||
The Itanium Processor Family is Intel's 64-bit successor to
|
The Itanium Processor Family is Intel's 64-bit successor to
|
||||||
|
|
|
@ -8,6 +8,7 @@ mainmenu "Linux/M32R Kernel Configuration"
|
||||||
config M32R
|
config M32R
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
select HAVE_OPROFILE
|
||||||
|
|
||||||
config SBUS
|
config SBUS
|
||||||
bool
|
bool
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
config MIPS
|
config MIPS
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
select HAVE_OPROFILE
|
||||||
# Horrible source of confusion. Die, die, die ...
|
# Horrible source of confusion. Die, die, die ...
|
||||||
select EMBEDDED
|
select EMBEDDED
|
||||||
select RTC_LIB
|
select RTC_LIB
|
||||||
|
|
|
@ -7,6 +7,7 @@ mainmenu "Linux/PA-RISC Kernel Configuration"
|
||||||
|
|
||||||
config PARISC
|
config PARISC
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select HAVE_OPROFILE
|
||||||
help
|
help
|
||||||
The PA-RISC microprocessor is designed by Hewlett-Packard and used
|
The PA-RISC microprocessor is designed by Hewlett-Packard and used
|
||||||
in many of their workstations & servers (HP9000 700 and 800 series,
|
in many of their workstations & servers (HP9000 700 and 800 series,
|
||||||
|
|
|
@ -87,6 +87,7 @@ config ARCH_NO_VIRT_TO_BUS
|
||||||
config PPC
|
config PPC
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
select HAVE_OPROFILE
|
||||||
|
|
||||||
config EARLY_PRINTK
|
config EARLY_PRINTK
|
||||||
bool
|
bool
|
||||||
|
|
|
@ -42,6 +42,7 @@ config GENERIC_CALIBRATE_DELAY
|
||||||
config PPC
|
config PPC
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
select HAVE_OPROFILE
|
||||||
|
|
||||||
config PPC32
|
config PPC32
|
||||||
bool
|
bool
|
||||||
|
|
|
@ -51,6 +51,7 @@ mainmenu "Linux Kernel Configuration"
|
||||||
|
|
||||||
config S390
|
config S390
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select HAVE_OPROFILE
|
||||||
|
|
||||||
source "init/Kconfig"
|
source "init/Kconfig"
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,7 @@ mainmenu "Linux/SuperH Kernel Configuration"
|
||||||
config SUPERH
|
config SUPERH
|
||||||
def_bool y
|
def_bool y
|
||||||
select EMBEDDED
|
select EMBEDDED
|
||||||
|
select HAVE_OPROFILE
|
||||||
help
|
help
|
||||||
The SuperH is a RISC processor targeted for use in embedded systems
|
The SuperH is a RISC processor targeted for use in embedded systems
|
||||||
and consumer electronics; it was also used in the Sega Dreamcast
|
and consumer electronics; it was also used in the Sega Dreamcast
|
||||||
|
|
|
@ -63,6 +63,7 @@ config NR_CPUS
|
||||||
config SPARC
|
config SPARC
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
select HAVE_OPROFILE
|
||||||
|
|
||||||
# Identify this as a Sparc32 build
|
# Identify this as a Sparc32 build
|
||||||
config SPARC32
|
config SPARC32
|
||||||
|
|
|
@ -8,6 +8,7 @@ mainmenu "Linux/UltraSPARC Kernel Configuration"
|
||||||
config SPARC
|
config SPARC
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
select HAVE_OPROFILE
|
||||||
|
|
||||||
config SPARC64
|
config SPARC64
|
||||||
bool
|
bool
|
||||||
|
|
|
@ -18,6 +18,7 @@ config X86_64
|
||||||
### Arch settings
|
### Arch settings
|
||||||
config X86
|
config X86
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select HAVE_OPROFILE
|
||||||
|
|
||||||
config GENERIC_LOCKBREAK
|
config GENERIC_LOCKBREAK
|
||||||
def_bool n
|
def_bool n
|
||||||
|
@ -106,10 +107,6 @@ config GENERIC_TIME_VSYSCALL
|
||||||
config HAVE_SETUP_PER_CPU_AREA
|
config HAVE_SETUP_PER_CPU_AREA
|
||||||
def_bool X86_64
|
def_bool X86_64
|
||||||
|
|
||||||
config ARCH_SUPPORTS_OPROFILE
|
|
||||||
bool
|
|
||||||
default y
|
|
||||||
|
|
||||||
select HAVE_KVM
|
select HAVE_KVM
|
||||||
|
|
||||||
config ARCH_HIBERNATION_POSSIBLE
|
config ARCH_HIBERNATION_POSSIBLE
|
||||||
|
|
|
@ -21,7 +21,7 @@ config PROFILING
|
||||||
config OPROFILE
|
config OPROFILE
|
||||||
tristate "OProfile system profiling (EXPERIMENTAL)"
|
tristate "OProfile system profiling (EXPERIMENTAL)"
|
||||||
depends on PROFILING && !UML
|
depends on PROFILING && !UML
|
||||||
depends on ARCH_SUPPORTS_OPROFILE || ALPHA || ARM || BLACKFIN || IA64 || M32R || PARISC || PPC || S390 || SUPERH || SPARC
|
depends on HAVE_OPROFILE
|
||||||
help
|
help
|
||||||
OProfile is a profiling system capable of profiling the
|
OProfile is a profiling system capable of profiling the
|
||||||
whole system, include the kernel, kernel modules, libraries,
|
whole system, include the kernel, kernel modules, libraries,
|
||||||
|
@ -29,6 +29,9 @@ config OPROFILE
|
||||||
|
|
||||||
If unsure, say N.
|
If unsure, say N.
|
||||||
|
|
||||||
|
config HAVE_OPROFILE
|
||||||
|
def_bool n
|
||||||
|
|
||||||
config KPROBES
|
config KPROBES
|
||||||
bool "Kprobes"
|
bool "Kprobes"
|
||||||
depends on KALLSYMS && MODULES && !UML
|
depends on KALLSYMS && MODULES && !UML
|
||||||
|
|
Загрузка…
Ссылка в новой задаче