Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild
* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild: scsi: fix dependency bug in aic7 Makefile kbuild: add svn revision information to setlocalversion kbuild: do not warn about __*init/__*exit symbols being exported Move Kconfig.instrumentation to arch/Kconfig and init/Kconfig Add HAVE_KPROBES Add HAVE_OPROFILE Create arch/Kconfig Fix ARM to play nicely with generic Instrumentation menu kconfig: ignore select of unknown symbol kconfig: mark config as changed when loading an alternate config kbuild: Spelling/grammar fixes for config DEBUG_SECTION_MISMATCH Remove __INIT_REFOK and __INITDATA_REFOK kbuild: print only total number of section mismatces found
This commit is contained in:
31
arch/Kconfig
Normal file
31
arch/Kconfig
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
#
|
||||||
|
# General architecture dependent options
|
||||||
|
#
|
||||||
|
|
||||||
|
config OPROFILE
|
||||||
|
tristate "OProfile system profiling (EXPERIMENTAL)"
|
||||||
|
depends on PROFILING
|
||||||
|
depends on HAVE_OPROFILE
|
||||||
|
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 HAVE_OPROFILE
|
||||||
|
def_bool n
|
||||||
|
|
||||||
|
config KPROBES
|
||||||
|
bool "Kprobes"
|
||||||
|
depends on KALLSYMS && MODULES
|
||||||
|
depends on HAVE_KPROBES
|
||||||
|
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".
|
||||||
|
|
||||||
|
config HAVE_KPROBES
|
||||||
|
def_bool n
|
@@ -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,
|
||||||
@@ -649,8 +650,6 @@ source "drivers/Kconfig"
|
|||||||
|
|
||||||
source "fs/Kconfig"
|
source "fs/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/alpha/Kconfig.debug"
|
source "arch/alpha/Kconfig.debug"
|
||||||
|
|
||||||
# DUMMY_CONSOLE may be defined in drivers/video/console/Kconfig
|
# DUMMY_CONSOLE may be defined in drivers/video/console/Kconfig
|
||||||
|
@@ -10,6 +10,8 @@ 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
|
||||||
|
select HAVE_KPROBES if (!XIP_KERNEL)
|
||||||
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
|
||||||
@@ -135,6 +137,23 @@ config FIQ
|
|||||||
config ARCH_MTD_XIP
|
config ARCH_MTD_XIP
|
||||||
bool
|
bool
|
||||||
|
|
||||||
|
if OPROFILE
|
||||||
|
|
||||||
|
config OPROFILE_ARMV6
|
||||||
|
def_bool y
|
||||||
|
depends on CPU_V6 && !SMP
|
||||||
|
select OPROFILE_ARM11_CORE
|
||||||
|
|
||||||
|
config OPROFILE_MPCORE
|
||||||
|
def_bool y
|
||||||
|
depends on CPU_V6 && SMP
|
||||||
|
select OPROFILE_ARM11_CORE
|
||||||
|
|
||||||
|
config OPROFILE_ARM11_CORE
|
||||||
|
bool
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
config VECTORS_BASE
|
config VECTORS_BASE
|
||||||
hex
|
hex
|
||||||
default 0xffff0000 if MMU || CPU_HIGH_VECTOR
|
default 0xffff0000 if MMU || CPU_HIGH_VECTOR
|
||||||
@@ -1128,8 +1147,6 @@ endmenu
|
|||||||
|
|
||||||
source "fs/Kconfig"
|
source "fs/Kconfig"
|
||||||
|
|
||||||
source "arch/arm/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/arm/Kconfig.debug"
|
source "arch/arm/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
@@ -1,62 +0,0 @@
|
|||||||
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 && !UML
|
|
||||||
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_ARMV6
|
|
||||||
bool
|
|
||||||
depends on OPROFILE && CPU_V6 && !SMP
|
|
||||||
default y
|
|
||||||
select OPROFILE_ARM11_CORE
|
|
||||||
|
|
||||||
config OPROFILE_MPCORE
|
|
||||||
bool
|
|
||||||
depends on OPROFILE && CPU_V6 && SMP
|
|
||||||
default y
|
|
||||||
select OPROFILE_ARM11_CORE
|
|
||||||
|
|
||||||
config OPROFILE_ARM11_CORE
|
|
||||||
bool
|
|
||||||
|
|
||||||
config KPROBES
|
|
||||||
bool "Kprobes"
|
|
||||||
depends on KALLSYMS && MODULES && !UML && !XIP_KERNEL
|
|
||||||
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".
|
|
||||||
|
|
||||||
config MARKERS
|
|
||||||
bool "Activate markers"
|
|
||||||
help
|
|
||||||
Place an empty function call at each marker site. Can be
|
|
||||||
dynamically changed for a probe function.
|
|
||||||
|
|
||||||
endif # INSTRUMENTATION
|
|
@@ -10,6 +10,8 @@ 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
|
||||||
|
select HAVE_KPROBES
|
||||||
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 +56,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
|
||||||
@@ -973,8 +974,6 @@ source "drivers/Kconfig"
|
|||||||
|
|
||||||
source "fs/Kconfig"
|
source "fs/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/blackfin/Kconfig.debug"
|
source "arch/blackfin/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
@@ -213,8 +213,6 @@ source "drivers/pci/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"
|
||||||
|
@@ -375,8 +375,6 @@ 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"
|
||||||
|
@@ -223,8 +223,6 @@ 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"
|
||||||
|
@@ -15,6 +15,8 @@ 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
|
||||||
|
select HAVE_KPROBES
|
||||||
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
|
||||||
@@ -600,8 +602,6 @@ config IRQ_PER_CPU
|
|||||||
|
|
||||||
source "arch/ia64/hp/sim/Kconfig"
|
source "arch/ia64/hp/sim/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/ia64/Kconfig.debug"
|
source "arch/ia64/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
@@ -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
|
||||||
@@ -426,8 +427,6 @@ source "drivers/Kconfig"
|
|||||||
|
|
||||||
source "fs/Kconfig"
|
source "fs/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/m32r/Kconfig.debug"
|
source "arch/m32r/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
@@ -678,8 +678,6 @@ 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"
|
||||||
|
@@ -711,8 +711,6 @@ 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,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
|
||||||
@@ -2095,8 +2096,6 @@ source "drivers/Kconfig"
|
|||||||
|
|
||||||
source "fs/Kconfig"
|
source "fs/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/mips/Kconfig.debug"
|
source "arch/mips/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
@@ -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,
|
||||||
@@ -272,8 +273,6 @@ source "drivers/Kconfig"
|
|||||||
|
|
||||||
source "fs/Kconfig"
|
source "fs/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/parisc/Kconfig.debug"
|
source "arch/parisc/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
@@ -87,6 +87,8 @@ config ARCH_NO_VIRT_TO_BUS
|
|||||||
config PPC
|
config PPC
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
select HAVE_OPROFILE
|
||||||
|
select HAVE_KPROBES
|
||||||
|
|
||||||
config EARLY_PRINTK
|
config EARLY_PRINTK
|
||||||
bool
|
bool
|
||||||
@@ -713,8 +715,6 @@ source "arch/powerpc/sysdev/qe_lib/Kconfig"
|
|||||||
|
|
||||||
source "lib/Kconfig"
|
source "lib/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/powerpc/Kconfig.debug"
|
source "arch/powerpc/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
@@ -42,6 +42,8 @@ config GENERIC_CALIBRATE_DELAY
|
|||||||
config PPC
|
config PPC
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
select HAVE_OPROFILE
|
||||||
|
select HAVE_KPROBES
|
||||||
|
|
||||||
config PPC32
|
config PPC32
|
||||||
bool
|
bool
|
||||||
@@ -1256,8 +1258,6 @@ endmenu
|
|||||||
|
|
||||||
source "lib/Kconfig"
|
source "lib/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/ppc/Kconfig.debug"
|
source "arch/ppc/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
@@ -51,6 +51,8 @@ mainmenu "Linux Kernel Configuration"
|
|||||||
|
|
||||||
config S390
|
config S390
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select HAVE_OPROFILE
|
||||||
|
select HAVE_KPROBES
|
||||||
|
|
||||||
source "init/Kconfig"
|
source "init/Kconfig"
|
||||||
|
|
||||||
@@ -526,8 +528,6 @@ source "drivers/Kconfig"
|
|||||||
|
|
||||||
source "fs/Kconfig"
|
source "fs/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/s390/Kconfig.debug"
|
source "arch/s390/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/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
|
||||||
@@ -896,8 +897,6 @@ source "drivers/Kconfig"
|
|||||||
|
|
||||||
source "fs/Kconfig"
|
source "fs/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/sh/Kconfig.debug"
|
source "arch/sh/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
@@ -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
|
||||||
@@ -320,8 +321,6 @@ endmenu
|
|||||||
|
|
||||||
source "fs/Kconfig"
|
source "fs/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/sparc/Kconfig.debug"
|
source "arch/sparc/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
@@ -8,6 +8,8 @@ mainmenu "Linux/UltraSPARC Kernel Configuration"
|
|||||||
config SPARC
|
config SPARC
|
||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
|
select HAVE_OPROFILE
|
||||||
|
select HAVE_KPROBES
|
||||||
|
|
||||||
config SPARC64
|
config SPARC64
|
||||||
bool
|
bool
|
||||||
@@ -465,8 +467,6 @@ source "drivers/sbus/char/Kconfig"
|
|||||||
|
|
||||||
source "fs/Kconfig"
|
source "fs/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/sparc64/Kconfig.debug"
|
source "arch/sparc64/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
@@ -289,6 +289,4 @@ config INPUT
|
|||||||
bool
|
bool
|
||||||
default n
|
default n
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/um/Kconfig.debug"
|
source "arch/um/Kconfig.debug"
|
||||||
|
@@ -331,8 +331,6 @@ 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"
|
||||||
|
@@ -18,6 +18,8 @@ config X86_64
|
|||||||
### Arch settings
|
### Arch settings
|
||||||
config X86
|
config X86
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select HAVE_OPROFILE
|
||||||
|
select HAVE_KPROBES
|
||||||
|
|
||||||
config GENERIC_LOCKBREAK
|
config GENERIC_LOCKBREAK
|
||||||
def_bool n
|
def_bool n
|
||||||
@@ -106,10 +108,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
|
||||||
@@ -1597,8 +1595,6 @@ source "drivers/firmware/Kconfig"
|
|||||||
|
|
||||||
source "fs/Kconfig"
|
source "fs/Kconfig"
|
||||||
|
|
||||||
source "kernel/Kconfig.instrumentation"
|
|
||||||
|
|
||||||
source "arch/x86/Kconfig.debug"
|
source "arch/x86/Kconfig.debug"
|
||||||
|
|
||||||
source "security/Kconfig"
|
source "security/Kconfig"
|
||||||
|
@@ -246,8 +246,6 @@ 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"
|
||||||
|
@@ -44,13 +44,8 @@ clean-files += aic79xx_seq.h aic79xx_reg.h aic79xx_reg_print.c
|
|||||||
|
|
||||||
# Dependencies for generated files need to be listed explicitly
|
# Dependencies for generated files need to be listed explicitly
|
||||||
|
|
||||||
$(obj)/aic7xxx_core.o: $(obj)/aic7xxx_seq.h
|
$(addprefix $(src)/,$(aic7xxx-y:.o=.c)): $(obj)/aic7xxx_seq.h $(obj)/aic7xxx_reg.h
|
||||||
$(obj)/aic7xxx_core.o: $(obj)/aic7xxx_reg.h
|
$(addprefix $(src)/,$(aic79xx-y:.o=.c)): $(obj)/aic79xx_seq.h $(obj)/aic79xx_reg.h
|
||||||
$(obj)/aic79xx_core.o: $(obj)/aic79xx_seq.h
|
|
||||||
$(obj)/aic79xx_core.o: $(obj)/aic79xx_reg.h
|
|
||||||
|
|
||||||
$(addprefix $(obj)/,$(aic7xxx-y)): $(obj)/aic7xxx_seq.h
|
|
||||||
$(addprefix $(obj)/,$(aic79xx-y)): $(obj)/aic79xx_seq.h
|
|
||||||
|
|
||||||
aic7xxx-gen-$(CONFIG_AIC7XXX_BUILD_FIRMWARE) := $(obj)/aic7xxx_reg.h
|
aic7xxx-gen-$(CONFIG_AIC7XXX_BUILD_FIRMWARE) := $(obj)/aic7xxx_reg.h
|
||||||
aic7xxx-gen-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) += $(obj)/aic7xxx_reg_print.c
|
aic7xxx-gen-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) += $(obj)/aic7xxx_reg_print.c
|
||||||
|
@@ -124,9 +124,6 @@
|
|||||||
#define __REF .section ".ref.text", "ax"
|
#define __REF .section ".ref.text", "ax"
|
||||||
#define __REFDATA .section ".ref.data", "aw"
|
#define __REFDATA .section ".ref.data", "aw"
|
||||||
#define __REFCONST .section ".ref.rodata", "aw"
|
#define __REFCONST .section ".ref.rodata", "aw"
|
||||||
/* backward compatibility */
|
|
||||||
#define __INIT_REFOK .section __REF
|
|
||||||
#define __INITDATA_REFOK .section __REFDATA
|
|
||||||
|
|
||||||
#ifndef __ASSEMBLY__
|
#ifndef __ASSEMBLY__
|
||||||
/*
|
/*
|
||||||
|
14
init/Kconfig
14
init/Kconfig
@@ -665,6 +665,20 @@ config SLOB
|
|||||||
|
|
||||||
endchoice
|
endchoice
|
||||||
|
|
||||||
|
config PROFILING
|
||||||
|
bool "Profiling support (EXPERIMENTAL)"
|
||||||
|
help
|
||||||
|
Say Y here to enable the extended profiling support mechanisms used
|
||||||
|
by profilers such as OProfile.
|
||||||
|
|
||||||
|
config MARKERS
|
||||||
|
bool "Activate markers"
|
||||||
|
help
|
||||||
|
Place an empty function call at each marker site. Can be
|
||||||
|
dynamically changed for a probe function.
|
||||||
|
|
||||||
|
source "arch/Kconfig"
|
||||||
|
|
||||||
endmenu # General setup
|
endmenu # General setup
|
||||||
|
|
||||||
config SLABINFO
|
config SLABINFO
|
||||||
|
@@ -1,49 +0,0 @@
|
|||||||
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 && !UML
|
|
||||||
depends on ARCH_SUPPORTS_OPROFILE || ALPHA || ARM || BLACKFIN || IA64 || M32R || PARISC || PPC || S390 || SUPERH || SPARC
|
|
||||||
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 && !UML
|
|
||||||
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".
|
|
||||||
|
|
||||||
config MARKERS
|
|
||||||
bool "Activate markers"
|
|
||||||
help
|
|
||||||
Place an empty function call at each marker site. Can be
|
|
||||||
dynamically changed for a probe function.
|
|
||||||
|
|
||||||
endif # INSTRUMENTATION
|
|
@@ -81,7 +81,7 @@ config HEADERS_CHECK
|
|||||||
|
|
||||||
config DEBUG_SECTION_MISMATCH
|
config DEBUG_SECTION_MISMATCH
|
||||||
bool "Enable full Section mismatch analysis"
|
bool "Enable full Section mismatch analysis"
|
||||||
default n
|
depends on UNDEFINED
|
||||||
help
|
help
|
||||||
The section mismatch analysis checks if there are illegal
|
The section mismatch analysis checks if there are illegal
|
||||||
references from one section to another section.
|
references from one section to another section.
|
||||||
@@ -90,19 +90,19 @@ config DEBUG_SECTION_MISMATCH
|
|||||||
most likely result in an oops.
|
most likely result in an oops.
|
||||||
In the code functions and variables are annotated with
|
In the code functions and variables are annotated with
|
||||||
__init, __devinit etc. (see full list in include/linux/init.h)
|
__init, __devinit etc. (see full list in include/linux/init.h)
|
||||||
which result in the code/data being placed in specific sections.
|
which results in the code/data being placed in specific sections.
|
||||||
The section mismatch anaylsis are always done after a full
|
The section mismatch analysis is always done after a full
|
||||||
kernel build but enabling this options will in addition
|
kernel build but enabling this option will in addition
|
||||||
do the following:
|
do the following:
|
||||||
- Add the option -fno-inline-functions-called-once to gcc
|
- Add the option -fno-inline-functions-called-once to gcc
|
||||||
When inlining a function annotated __init in a non-init
|
When inlining a function annotated __init in a non-init
|
||||||
function we would loose the section information and thus
|
function we would lose the section information and thus
|
||||||
the analysis would not catch the illegal reference.
|
the analysis would not catch the illegal reference.
|
||||||
This options tell gcc to inline less but will also
|
This option tells gcc to inline less but will also
|
||||||
result in a larger kernel.
|
result in a larger kernel.
|
||||||
- Run the section mismatch analysis for each module/built-in.o
|
- Run the section mismatch analysis for each module/built-in.o
|
||||||
When we run the section mismatch analysis on vmlinux.o we
|
When we run the section mismatch analysis on vmlinux.o we
|
||||||
looses valueable information about where the mismatch was
|
lose valueble information about where the mismatch was
|
||||||
introduced.
|
introduced.
|
||||||
Running the analysis for each module/built-in.o file
|
Running the analysis for each module/built-in.o file
|
||||||
will tell where the mismatch happens much closer to the
|
will tell where the mismatch happens much closer to the
|
||||||
|
@@ -821,6 +821,7 @@ static void conf_load(void)
|
|||||||
return;
|
return;
|
||||||
if (!conf_read(dialog_input_result)) {
|
if (!conf_read(dialog_input_result)) {
|
||||||
set_config_filename(dialog_input_result);
|
set_config_filename(dialog_input_result);
|
||||||
|
sym_set_change_count(1);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
show_textbox(NULL, _("File does not exist!"), 5, 38);
|
show_textbox(NULL, _("File does not exist!"), 5, 38);
|
||||||
|
@@ -203,12 +203,9 @@ void sym_check_prop(struct symbol *sym)
|
|||||||
prop_warn(prop,
|
prop_warn(prop,
|
||||||
"config symbol '%s' uses select, but is "
|
"config symbol '%s' uses select, but is "
|
||||||
"not boolean or tristate", sym->name);
|
"not boolean or tristate", sym->name);
|
||||||
else if (sym2->type == S_UNKNOWN)
|
else if (sym2->type != S_UNKNOWN &&
|
||||||
prop_warn(prop,
|
sym2->type != S_BOOLEAN &&
|
||||||
"'select' used by config symbol '%s' "
|
sym2->type != S_TRISTATE)
|
||||||
"refers to undefined symbol '%s'",
|
|
||||||
sym->name, sym2->name);
|
|
||||||
else if (sym2->type != S_BOOLEAN && sym2->type != S_TRISTATE)
|
|
||||||
prop_warn(prop,
|
prop_warn(prop,
|
||||||
"'%s' has wrong type. 'select' only "
|
"'%s' has wrong type. 'select' only "
|
||||||
"accept arguments of boolean and "
|
"accept arguments of boolean and "
|
||||||
|
@@ -870,7 +870,7 @@ const struct sectioncheck sectioncheck[] = {
|
|||||||
/* Do not export init/exit functions or data */
|
/* Do not export init/exit functions or data */
|
||||||
{
|
{
|
||||||
.fromsec = { "__ksymtab*", NULL },
|
.fromsec = { "__ksymtab*", NULL },
|
||||||
.tosec = { ALL_INIT_SECTIONS, ALL_EXIT_SECTIONS, NULL },
|
.tosec = { INIT_SECTIONS, EXIT_SECTIONS, NULL },
|
||||||
.mismatch = EXPORT_TO_INIT_EXIT
|
.mismatch = EXPORT_TO_INIT_EXIT
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -1125,15 +1125,15 @@ static void report_sec_mismatch(const char *modname, enum mismatch mismatch,
|
|||||||
to = to_is_func ? "function" : "variable";
|
to = to_is_func ? "function" : "variable";
|
||||||
to_p = to_is_func ? "()" : "";
|
to_p = to_is_func ? "()" : "";
|
||||||
|
|
||||||
|
sec_mismatch_count++;
|
||||||
|
if (!sec_mismatch_verbose)
|
||||||
|
return;
|
||||||
|
|
||||||
fprintf(stderr, "WARNING: %s(%s+0x%llx): Section mismatch in"
|
fprintf(stderr, "WARNING: %s(%s+0x%llx): Section mismatch in"
|
||||||
" reference from the %s %s%s to the %s %s:%s%s\n",
|
" reference from the %s %s%s to the %s %s:%s%s\n",
|
||||||
modname, fromsec, fromaddr, from, fromsym, from_p,
|
modname, fromsec, fromaddr, from, fromsym, from_p,
|
||||||
to, tosec, tosym, to_p);
|
to, tosec, tosym, to_p);
|
||||||
|
|
||||||
sec_mismatch_count++;
|
|
||||||
if (!sec_mismatch_verbose)
|
|
||||||
return;
|
|
||||||
|
|
||||||
switch (mismatch) {
|
switch (mismatch) {
|
||||||
case TEXT_TO_INIT:
|
case TEXT_TO_INIT:
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
@@ -1939,10 +1939,9 @@ int main(int argc, char **argv)
|
|||||||
write_dump(dump_write);
|
write_dump(dump_write);
|
||||||
if (sec_mismatch_count && !sec_mismatch_verbose)
|
if (sec_mismatch_count && !sec_mismatch_verbose)
|
||||||
fprintf(stderr, "modpost: Found %d section mismatch(es).\n"
|
fprintf(stderr, "modpost: Found %d section mismatch(es).\n"
|
||||||
"To see additional details select \"Enable full "
|
"To see full details build your kernel with:\n"
|
||||||
"Section mismatch analysis\"\n"
|
"'make CONFIG_DEBUG_SECTION_MISMATCH=y'\n",
|
||||||
"in the Kernel Hacking menu "
|
sec_mismatch_count);
|
||||||
"(CONFIG_SECTION_MISMATCH).\n", sec_mismatch_count);
|
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
16
scripts/setlocalversion
Normal file → Executable file
16
scripts/setlocalversion
Normal file → Executable file
@@ -45,3 +45,19 @@ if hgid=`hg id 2>/dev/null`; then
|
|||||||
# All done with mercurial
|
# All done with mercurial
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Check for svn and a svn repo.
|
||||||
|
if rev=`svn info 2>/dev/null | grep '^Revision'`; then
|
||||||
|
rev=`echo $rev | awk '{print $NF}'`
|
||||||
|
changes=`svn status 2>/dev/null | grep '^[AMD]' | wc -l`
|
||||||
|
|
||||||
|
# Are there uncommitted changes?
|
||||||
|
if [ $changes != 0 ]; then
|
||||||
|
printf -- '-svn%s%s%s' "$rev" -dirty "$changes"
|
||||||
|
else
|
||||||
|
printf -- '-svn%s' "$rev"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# All done with svn
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
Reference in New Issue
Block a user