aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2008-02-04 10:56:17 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2008-02-04 10:56:17 -0500
commit519cb688072008363e091be3f291c1b5779e2ba8 (patch)
treedc5e251ff0eac8ae2f022858c0d7526299235f1d /lib
parent2f98735c9c24ea1f0d40a364d4e63611b689b795 (diff)
parent8891fec65ac5b5a74b50c705e31b66c92c3eddeb (diff)
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
Diffstat (limited to 'lib')
-rw-r--r--lib/Kconfig.debug14
1 files changed, 7 insertions, 7 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 0d8a5a4a789d..0d385be682db 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -81,7 +81,7 @@ config HEADERS_CHECK
81 81
82config DEBUG_SECTION_MISMATCH 82config DEBUG_SECTION_MISMATCH
83 bool "Enable full Section mismatch analysis" 83 bool "Enable full Section mismatch analysis"
84 default n 84 depends on UNDEFINED
85 help 85 help
86 The section mismatch analysis checks if there are illegal 86 The section mismatch analysis checks if there are illegal
87 references from one section to another section. 87 references from one section to another section.
@@ -90,19 +90,19 @@ config DEBUG_SECTION_MISMATCH
90 most likely result in an oops. 90 most likely result in an oops.
91 In the code functions and variables are annotated with 91 In the code functions and variables are annotated with
92 __init, __devinit etc. (see full list in include/linux/init.h) 92 __init, __devinit etc. (see full list in include/linux/init.h)
93 which result in the code/data being placed in specific sections. 93 which results in the code/data being placed in specific sections.
94 The section mismatch anaylsis are always done after a full 94 The section mismatch analysis is always done after a full
95 kernel build but enabling this options will in addition 95 kernel build but enabling this option will in addition
96 do the following: 96 do the following:
97 - Add the option -fno-inline-functions-called-once to gcc 97 - Add the option -fno-inline-functions-called-once to gcc
98 When inlining a function annotated __init in a non-init 98 When inlining a function annotated __init in a non-init
99 function we would loose the section information and thus 99 function we would lose the section information and thus
100 the analysis would not catch the illegal reference. 100 the analysis would not catch the illegal reference.
101 This options tell gcc to inline less but will also 101 This option tells gcc to inline less but will also
102 result in a larger kernel. 102 result in a larger kernel.
103 - Run the section mismatch analysis for each module/built-in.o 103 - Run the section mismatch analysis for each module/built-in.o
104 When we run the section mismatch analysis on vmlinux.o we 104 When we run the section mismatch analysis on vmlinux.o we
105 looses valueable information about where the mismatch was 105 lose valueble information about where the mismatch was
106 introduced. 106 introduced.
107 Running the analysis for each module/built-in.o file 107 Running the analysis for each module/built-in.o file
108 will tell where the mismatch happens much closer to the 108 will tell where the mismatch happens much closer to the