modprobe-small: make depmod compatible with kernel build.

three last commits' sizes combined:

function                                             old     new   delta
find_alias                                           218     612    +394
load_dep_bb                                            -     310    +310
modprobe_main                                        289     380     +91
copy_stringbuf                                         -      40     +40
process_module                                       637     655     +18
reset_stringbuf                                        -      15     +15
parse_module                                         333     334      +1
append                                                84      85      +1
fileAction                                           832     819     -13
------------------------------------------------------------------------------
(add/remove: 3/0 grow/shrink: 5/1 up/down: 870/-13)           Total: 857 bytes
This commit is contained in:
Denis Vlasenko
2008-07-10 14:16:11 +00:00
parent 7f950a93ff
commit 0e2c93fc0b
2 changed files with 106 additions and 39 deletions

View File

@ -11,23 +11,31 @@ config MODPROBE_SMALL
help
Simplified modutils.
With this option modprobe does not use or require
modules.dep or /etc/modules.conf files.
With this option modprobe does not require modules.dep file
and does not use /etc/modules.conf file.
It scans module files in /lib/modules/`uname -r` and
determines dependencies and module alias names on the fly.
This may make module loading slower, most notably
when one needs to load module by alias (this requires
scanning through module _bodies_).
At the first attempt to load a module by alias modprobe
will try to generate modules.dep.bb file in order to speed up
future loads by alias. Failure to do so (read-only /lib/modules,
etc) is not reported, and future modprobes will be slow too.
NB: modules.dep.bb file format is not compatible
with modules.dep file as created/used by standard module tools.
Additional module parameters can be stored in
/etc/modules/$module_name files.
Apart from modprobe, other utilities are also provided:
- insmod is an alias to modprobe
- rmmod is an alias to modprobe -r
- depmod is provided but does nothing
- depmod generates modules.dep.bb
As of 2008-07, this code is experimental. It it 15kb smaller
As of 2008-07, this code is experimental. It it 14kb smaller
than "non-small" modutils.
config FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE