Timo Teräs
48dc80bbba
modutils: merge module_entry and module_info to common
...
This merges the in-memory module info structures of modprobe
and depmod. This allows sharing hashing by modulename code
improving depmod runtime with almost factor of 2x.
function old new delta
get_or_add_modentry - 17 +17
do_modprobe 590 601 +11
moddb_get_or_create - 10 +10
load_modules_dep 195 205 +10
moddb_get - 7 +7
add_probe 81 78 -3
modprobe_main 721 714 -7
depmod_main 553 543 -10
config_file_action 434 421 -13
helper_get_module 160 144 -16
parse_module 343 320 -23
order_dep_list 105 82 -23
------------------------------------------------------------------------------
(add/remove: 3/0 grow/shrink: 2/7 up/down: 55/-95) Total: -40 bytes
Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2015-11-05 18:54:55 +01:00
Denys Vlasenko
cd13974b20
rmmod: fix bad error message
...
Before:
># busybox_old rmmod gtrhfhdfghdf
rmmod: can't unload 'gtrhfhdfghdf': unknown symbol in module, or unknown parameter
After:
># busybox rmmod gtrhfhdfghdf
rmmod: can't unload module 'gtrhfhdfghdf': No such file or directory
function old new delta
modprobe_main 726 721 -5
do_modprobe 599 590 -9
rmmod_main 187 169 -18
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-32) Total: -32 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2015-10-24 04:17:04 +02:00
Denys Vlasenko
cc70b6f8b6
depmod: simple memory optimization
...
function old new delta
filename2modname 67 86 +19
parse_module 374 351 -23
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2015-01-24 22:30:30 +01:00
Denys Vlasenko
78854520eb
modprobe: revert checking for /, stop doing basename() on modprobe args
...
function old new delta
process_module 726 719 -7
filename2modname 81 67 -14
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-21) Total: -21 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2015-01-01 19:02:40 +01:00
Denys Vlasenko
c5830bdf65
modprobe/insmod: fix parameter quoting
...
function old new delta
parse_cmdline_module_options 102 157 +55
modprobe_main 657 662 +5
insmod_main 68 70 +2
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/0 up/down: 62/0) Total: 62 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-02-02 00:01:07 +01:00
Denys Vlasenko
8ae386bf19
revert commit 1396221d5a
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-02-01 23:24:25 +01:00
Denys Vlasenko
1cd0d86005
modutils: explain why we no longer quote params
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-25 18:26:46 +02:00
Carmelo AMOROSO
1396221d5a
insmod: Do not add a pair of "" around the arguments of the module.
...
If there are some spaces in the insmod command line, then
this will be splitted in single words as separate elements of
argv. It just needs to chain them together in the options string
passed to the sys_init_module syscall.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-25 18:19:22 +02:00
Denys Vlasenko
0ef64bdb40
*: make GNU licensing statement forms more regular
...
This change retains "or later" state! No licensing _changes_ here,
only form is adjusted (article, space between "GPL" and "v2" and so on).
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-16 20:14:46 +02:00
Denys Vlasenko
77c066ea5c
modutils: add FEATURE_INSMOD_TRY_MMAP option
...
function old new delta
try_to_mmap_module - 121 +121
bb_init_module_24 4514 4578 +64
bb_init_module 119 173 +54
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 2/0 up/down: 239/0) Total: 239 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-25 04:35:22 +01:00
Denys Vlasenko
ee47f6e44f
modprobe: correct exitcode handling and error messages with respect to -q
...
function old new delta
do_modprobe 319 339 +20
bb_delete_module 10 26 +16
moderror 62 71 +9
bb_init_module 112 119 +7
modprobe_main 488 494 +6
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/0 up/down: 58/0) Total: 58 bytes
Signed-off-by: Gilles Espinasse <g.esp@free.fr>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-06-17 18:46:06 +02:00
Denys Vlasenko
16bda3bd1f
depmod: fix handling of .gz modules
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-05-18 13:08:04 +02:00
Denis Vlasenko
0b791d9a97
move llist_find_str from modutils to libbb
2009-04-13 20:52:00 +00:00
Denis Vlasenko
4144504912
modutils: remove redundant sanitization
2009-04-13 20:32:31 +00:00
Denis Vlasenko
0d907eab6c
modutils: dont pass NULL options to init_module()
2009-03-29 17:25:14 +00:00
Denis Vlasenko
3b5c9b8885
insmod/modprobe: do not pass NULL to kernel as module parameter
2009-03-13 23:43:26 +00:00
Denis Vlasenko
c5741003e9
modutils: delete unused global variable
...
function old new delta
modprobe_main 570 567 -3
insmod_main 101 98 -3
insmod_outputname 4 - -4
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 0/2 up/down: 0/-10) Total: -10 bytes
text data bss dec hex filename
816784 476 7892 825152 c9740 busybox_old
816778 476 7888 825142 c9736 busybox_unstripped
2009-03-05 09:26:17 +00:00
Denis Vlasenko
48637e0924
modutils: oveflow fix
2009-02-26 12:00:52 +00:00
Denis Vlasenko
fc66892abd
*: remove superfluous casts. no code changes
2008-11-06 02:32:31 +00:00
Denis Vlasenko
bb26db49b1
modprobe: fix a segfault when modprobe is called with no arguments at all
...
function old new delta
modprobe_main 559 535 -24
2008-10-31 02:04:28 +00:00
Denis Vlasenko
ba1315d0fb
modutils/*: rewrite by Timo Teras <timo.teras AT iki.fi>
...
- a lot faster (linear algorithmic complexity, smaller memory foot print)
- a lot smaller (the old code was overly complicated)
- loading of aliases is now module-init-tools compliant
- blacklisting is done correctly (-b option added)
- module argument quoting done right
- depmod now correctly generates modules.symbols and modules.alias
add/remove: 16/21 grow/shrink: 4/6 up/down: 6930/-9316 Total: -2386 bytes
text data bss dec hex filename
806039 592 6680 813311 c68ff busybox_old
803498 592 6676 810766 c5f0e busybox_unstripped
2008-09-13 14:59:38 +00:00