diff options
author | Michael Witten <mfwitten@gmail.com> | 2011-04-17 00:08:48 -0400 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2011-09-15 08:07:03 -0400 |
commit | e809ab01013dfd905004f7e367978141c5dfc49d (patch) | |
tree | f7216401082575b7e93b82604077970135c0365e /lib/Kconfig.debug | |
parent | 2fe038e33c3921512f5450e113c263a772939f4c (diff) |
Kconfig: Copyedit: DEBUG_SECTION_MISMATCH
Signed-off-by: Michael Witten <mfwitten@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'lib/Kconfig.debug')
-rw-r--r-- | lib/Kconfig.debug | 38 |
1 files changed, 19 insertions, 19 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index 1b11409b5f5d..d0324986a3b0 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug | |||
@@ -117,31 +117,31 @@ config DEBUG_SECTION_MISMATCH | |||
117 | help | 117 | help |
118 | The section mismatch analysis checks if there are illegal | 118 | The section mismatch analysis checks if there are illegal |
119 | references from one section to another section. | 119 | references from one section to another section. |
120 | Linux will during link or during runtime drop some sections | 120 | During linktime or runtime, some sections are dropped; |
121 | and any use of code/data previously in these sections will | 121 | any use of code/data previously in these sections would |
122 | most likely result in an oops. | 122 | most likely result in an oops. |
123 | In the code functions and variables are annotated with | 123 | In the code, functions and variables are annotated with |
124 | __init, __devinit etc. (see full list in include/linux/init.h) | 124 | __init, __devinit, etc. (see the full list in include/linux/init.h), |
125 | which results in the code/data being placed in specific sections. | 125 | which results in the code/data being placed in specific sections. |
126 | The section mismatch analysis is always done after a full | 126 | The section mismatch analysis is always performed after a full |
127 | kernel build but enabling this option will in addition | 127 | kernel build, and enabling this option causes the following |
128 | do the following: | 128 | additional steps to occur: |
129 | - Add the option -fno-inline-functions-called-once to gcc | 129 | - Add the option -fno-inline-functions-called-once to gcc commands. |
130 | When inlining a function annotated __init in a non-init | 130 | When inlining a function annotated with __init in a non-init |
131 | function we would lose the section information and thus | 131 | function, we would lose the section information and thus |
132 | the analysis would not catch the illegal reference. | 132 | the analysis would not catch the illegal reference. |
133 | This option tells gcc to inline less but will also | 133 | This option tells gcc to inline less (but it does result in |
134 | result in a larger kernel. | 134 | a larger kernel). |
135 | - Run the section mismatch analysis for each module/built-in.o | 135 | - Run the section mismatch analysis for each module/built-in.o file. |
136 | When we run the section mismatch analysis on vmlinux.o we | 136 | When we run the section mismatch analysis on vmlinux.o, we |
137 | lose valueble information about where the mismatch was | 137 | lose valueble information about where the mismatch was |
138 | introduced. | 138 | introduced. |
139 | Running the analysis for each module/built-in.o file | 139 | Running the analysis for each module/built-in.o file |
140 | will tell where the mismatch happens much closer to the | 140 | tells where the mismatch happens much closer to the |
141 | source. The drawback is that we will report the same | 141 | source. The drawback is that the same mismatch is |
142 | mismatch at least twice. | 142 | reported at least twice. |
143 | - Enable verbose reporting from modpost to help solving | 143 | - Enable verbose reporting from modpost in order to help resolve |
144 | the section mismatches reported. | 144 | the section mismatches that are reported. |
145 | 145 | ||
146 | config DEBUG_KERNEL | 146 | config DEBUG_KERNEL |
147 | bool "Kernel debugging" | 147 | bool "Kernel debugging" |