Section mismatch is identified as references to .init* sections from non .init sections. And likewise references to .exit.* sections outside .exit sections. .init.* sections are discarded after a module is initialized and references to .init.* sections are oops candidates. .exit.* sections are discarded when a module is built-in and thus references to .exit are also oops candidates. The checks were possible to do using 'make buildcheck' which called the two perl scripts: reference_discarded.pl and reference_init.pl. This patch just moves the same functionality inside modpost and the scripts are then obsoleted. They will though be kept for a while so users can do double checks - but note that some .o files are skipped by the perl scripts so result is not 1:1. All credit for the concept goes to Keith Owens who implemented the original perl scrips - this patch just moves it to modpost. Compared to the perl script the implmentation in modpost will be run for each kernel build - thus catching the error much sooner, but the downside is that the individual .o file are not always identified. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> |
||
|---|---|---|
| .. | ||
| basic | ||
| genksyms | ||
| kconfig | ||
| ksymoops | ||
| mod | ||
| package | ||
| .gitignore | ||
| bin2c.c | ||
| binoffset.c | ||
| bloat-o-meter | ||
| checkconfig.pl | ||
| checkincludes.pl | ||
| checkstack.pl | ||
| checkversion.pl | ||
| conmakehash.c | ||
| extract-ikconfig | ||
| gcc-version.sh | ||
| gen_initramfs_list.sh | ||
| kallsyms.c | ||
| Kbuild.include | ||
| kernel-doc | ||
| Lindent | ||
| Makefile | ||
| Makefile.build | ||
| Makefile.clean | ||
| Makefile.host | ||
| Makefile.lib | ||
| Makefile.modinst | ||
| Makefile.modpost | ||
| makelst | ||
| mkcompile_h | ||
| mkmakefile | ||
| mksysmap | ||
| mkuboot.sh | ||
| mkversion | ||
| namespace.pl | ||
| patch-kernel | ||
| pnmtologo.c | ||
| reference_discarded.pl | ||
| reference_init.pl | ||
| setlocalversion | ||
| show_delta | ||
| ver_linux | ||