Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 264807
b: refs/heads/master
c: e809ab0
h: refs/heads/master
i:
  264805: 739c432
  264803: 07833ec
  264799: 7db8b71
v: v3
  • Loading branch information
Michael Witten authored and Jiri Kosina committed Sep 15, 2011
1 parent bdfb33e commit e5f60b6
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 20 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 2fe038e33c3921512f5450e113c263a772939f4c
refs/heads/master: e809ab01013dfd905004f7e367978141c5dfc49d
38 changes: 19 additions & 19 deletions trunk/lib/Kconfig.debug
Original file line number Diff line number Diff line change
Expand Up @@ -117,31 +117,31 @@ config DEBUG_SECTION_MISMATCH
help
The section mismatch analysis checks if there are illegal
references from one section to another section.
Linux will during link or during runtime drop some sections
and any use of code/data previously in these sections will
During linktime or runtime, some sections are dropped;
any use of code/data previously in these sections would
most likely result in an oops.
In the code functions and variables are annotated with
__init, __devinit etc. (see full list in include/linux/init.h)
In the code, functions and variables are annotated with
__init, __devinit, etc. (see the full list in include/linux/init.h),
which results in the code/data being placed in specific sections.
The section mismatch analysis is always done after a full
kernel build but enabling this option will in addition
do the following:
- Add the option -fno-inline-functions-called-once to gcc
When inlining a function annotated __init in a non-init
function we would lose the section information and thus
The section mismatch analysis is always performed after a full
kernel build, and enabling this option causes the following
additional steps to occur:
- Add the option -fno-inline-functions-called-once to gcc commands.
When inlining a function annotated with __init in a non-init
function, we would lose the section information and thus
the analysis would not catch the illegal reference.
This option tells gcc to inline less but will also
result in a larger kernel.
- Run the section mismatch analysis for each module/built-in.o
When we run the section mismatch analysis on vmlinux.o we
This option tells gcc to inline less (but it does result in
a larger kernel).
- Run the section mismatch analysis for each module/built-in.o file.
When we run the section mismatch analysis on vmlinux.o, we
lose valueble information about where the mismatch was
introduced.
Running the analysis for each module/built-in.o file
will tell where the mismatch happens much closer to the
source. The drawback is that we will report the same
mismatch at least twice.
- Enable verbose reporting from modpost to help solving
the section mismatches reported.
tells where the mismatch happens much closer to the
source. The drawback is that the same mismatch is
reported at least twice.
- Enable verbose reporting from modpost in order to help resolve
the section mismatches that are reported.

config DEBUG_KERNEL
bool "Kernel debugging"
Expand Down

0 comments on commit e5f60b6

Please sign in to comment.