diff options
| author | Kai Germaschewski <kai@tp1.ruhr-uni-bochum.de> | 2003-01-24 09:54:04 -0600 |
|---|---|---|
| committer | Kai Germaschewski <kai@tp1.ruhr-uni-bochum.de> | 2003-01-24 09:54:04 -0600 |
| commit | dcc38eae49e06d798497373771ae03f5508a2ec7 (patch) | |
| tree | 5f2ea4f7f329bff12bc4c1d2da2f5186344c452b /include/linux/ppdev.h | |
| parent | e4ccd604a353b3d4e61e99d04ac9a2bdd8b66ec4 (diff) | |
kbuild/modules: Record versions for unresolved symbols
In the case of CONFIG_MODVERSIONING, the build step will only
generate preliminary <module>.o objects, and an additional
postprocessing step is necessary to record the versions of the unresolved
symbols and add them into the final <module>.ko
The version information for unresolved symbols is again recorded into
a special section, "__versions", which contains an array of symbol
name strings and checksum (struct modversion_info). Size is here not
an issue, since this section will not be stored permanently in kernel
memory.
Makefile.modver takes care of the following steps:
o Collect the version information for all exported symbols from vmlinux
and all modules which export symbols.
o For each module, generate a C file which contains the modversion
information for all unresolved symbols in that module.
o For each module, compile that C file to an object file
o Finally, link the <module>.ko using the preliminary <module.o> + the
version information above.
The first two steps are currently done by not very efficient scripting,
so there's room for performance improvement using some helper C code.
Diffstat (limited to 'include/linux/ppdev.h')
0 files changed, 0 insertions, 0 deletions
