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
Denis Vlasenko
9ddc0045ec
modprobe: semi-trivial code shrink
...
function old new delta
build_dep 870 859 -11
already_loaded 134 112 -22
modprobe_main 449 368 -81
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-114) Total: -114 bytes
2008-08-06 00:51:43 +00:00
Denis Vlasenko
855ff6f503
modprobe: use buffering line reads (fgets) instead of reads().
...
libbb: remove reads()
function old new delta
include_conf_file_act 961 980 +19
localcmd 282 284 +2
already_loaded 155 151 -4
in_cksum 58 53 -5
modprobe_main 1630 1624 -6
reads 129 - -129
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 2/3 up/down: 21/-144) Total: -123 bytes
2008-08-04 21:16:46 +00:00
Denis Vlasenko
dadfb4975b
hush: add #defines to switch off break/continue if loops are not supported
...
*: remove a few inline keywords
no code changes
2008-07-29 10:16:05 +00:00
Denis Vlasenko
e1ee48e0fd
modprobe: support for /etc/modprobe.d, by Timo Teras.
...
function old new delta
include_conf_file_act - 929 +929
include_conf_recursive - 30 +30
include_conf_file2 - 30 +30
include_conf_file - 14 +14
include_conf_dir_act - 14 +14
build_dep 1011 875 -136
include_conf 922 - -922
------------------------------------------------------------------------------
(add/remove: 5/1 grow/shrink: 0/1 up/down: 1017/-1058) Total: -41 bytes
2008-07-29 00:19:44 +00:00
Denis Vlasenko
deeed59de0
libbb: introduce and use xrealloc_vector
...
function old new delta
xrealloc_vector_helper - 51 +51
create_list 84 99 +15
getopt_main 690 695 +5
passwd_main 1049 1053 +4
get_cached 85 89 +4
msh_main 1377 1380 +3
add_match 42 41 -1
read_lines 720 718 -2
grave 1068 1066 -2
fill_match_lines 143 141 -2
add_to_dirlist 67 65 -2
add_input_file 49 47 -2
act 252 250 -2
fsck_main 2252 2246 -6
man_main 765 757 -8
bb_internal_initgroups 228 220 -8
cut_main 1052 1041 -11
add_edge_to_node 55 43 -12
dpkg_main 3851 3835 -16
ifupdown_main 2202 2178 -24
sort_main 838 812 -26
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 5/15 up/down: 82/-124) Total: -42 bytes
2008-07-08 05:14:36 +00:00
Denis Vlasenko
8124a96c34
mdoprobe: fix SEGV bug (by Vlad Dronnikov)
2008-06-22 16:59:46 +00:00
Denis Vlasenko
f45c4f41b7
whitespace and comment fixes, no code changes
2008-06-16 04:09:25 +00:00
Bernhard Reutner-Fischer
e0fd13e901
- shrink modprobe a little bit (~-40 bytes). ACKed by Yann.
2008-05-31 18:50:17 +00:00
Bernhard Reutner-Fischer
db508e3b82
- fix overflow; improve documentation while at it
2008-05-28 15:57:31 +00:00
Bernhard Reutner-Fischer
b85fb693c1
- Add config option for DEFAULT_DEPMOD_FILE and DEFAULT_DEPMOD_FILE.
...
No obj-code changes.
2008-05-27 10:55:34 +00:00
Denis Vlasenko
ae84b11467
modprobe: fix for blacklisting
...
The patch makes the order of the alias/blacklist in modprobe.conf
irrelevant (like module-utils' modprobe). In first patch the alias had
to be defined before the blacklist which caused problems because the
modprobe.conf file is read before /lib/modules/*/modules.alias.
The attatched patch will mark the blacklisted module itself rather than
trying to find the alias that points to the blacklisted module and test
this flag later in the alias resolving stage.
2008-05-22 17:37:38 +00:00
Denis Vlasenko
9ddc8d54d1
modprobe: optional "blacklist" command support (by Natanael Copa)
...
is_conf_command - 56 +56
include_conf 898 917 +19
check_dep 348 356 +8
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 2/0 up/down: 83/0) Total: 83 bytes
2008-05-18 14:39:43 +00:00
Denis Vlasenko
c03e872112
save a bit of code with *strchrnul = '\0' trick
...
function old new delta
nextline 59 55 -4
include_conf 902 898 -4
read_config 414 406 -8
fsck_main 1880 1869 -11
2007-12-26 20:56:55 +00:00
Denis Vlasenko
e7fca5125a
*: remove superfluous "?" in option parsing
2007-11-10 01:32:18 +00:00
Denis Vlasenko
cb12cb2407
modprobe: fix a bug where we were entering endless loop
...
syslogd: strip trailing '\n' too, not only NULs
2007-11-06 11:34:03 +00:00
Denis Vlasenko
b68979aefa
insmod: code shrink, stop exporting insmod_ng_main.
...
function old new delta
add_ksymoops_symbols - 421 +421
static.section_names 20 40 +20
lsmod_main 425 424 -1
set_tainted 153 150 -3
main_opts 4 - -4
obj_symbol_patch 47 42 -5
obj_string_patch 144 139 -5
already_loaded 144 138 -6
check_dep 348 341 -7
append_option 75 68 -7
obj_allocate_commons 515 501 -14
new_process_module_arguments 1039 1018 -21
arch_new_symbol 31 9 -22
check_module_name_match 85 61 -24
obj_create_alloced_section 164 136 -28
include_conf 930 902 -28
modprobe_main 1643 1535 -108
obj_load 924 777 -147
insmod_ng_main 245 - -245
insmod_main 4122 3794 -328
------------------------------------------------------------------------------
(add/remove: 1/2 grow/shrink: 1/16 up/down: 441/-1003) Total: -562 bytes
text data bss dec hex filename
776020 974 9420 786414 bffee busybox_old
775384 974 9420 785778 bfd72 busybox_unstripped
2007-11-02 23:31:10 +00:00
Denis Vlasenko
9b49a5ed85
add -fvisibility=hidden to CC flags, mark XXX_main functions
...
EXTERNALLY_VISIBLE. 5% size reduction of libbusybox.so
2007-10-11 10:05:36 +00:00
Denis Vlasenko
fe7cd642b0
don't pass argc in getopt32, it's superfluous
...
(add/remove: 0/0 grow/shrink: 12/131 up/down: 91/-727) Total: -636 bytes
text data bss dec hex filename
773469 1058 11092 785619 bfcd3 busybox_old
772644 1058 11092 784794 bf99a busybox_unstripped
2007-08-18 15:32:12 +00:00
Denis Vlasenko
f848305afc
modprobe: add scanning of /lib/modules/uname -r
/modules.symbols
...
(by Yann E. MORIN)
2007-08-16 10:40:06 +00:00
Denis Vlasenko
dc757aa16c
introduce and use bb_basename()
...
function old new delta
bb_basename - 26 +26
sv_main 1226 1225 -1
passwd_main 1985 1983 -2
showdirs 482 478 -4
sendCgi 1811 1807 -4
make_device 1354 1350 -4
handleIncoming 2443 2439 -4
func_name 82 78 -4
service_name 2292 2285 -7
main 909 901 -8
cmp_main 555 547 -8
test_main 434 422 -12
act 228 216 -12
find_pair 180 164 -16
rmmod_main 298 280 -18
find_pid_by_name 156 134 -22
modprobe_main 1606 1576 -30
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/16 up/down: 26/-156) Total: -130 bytes
text data bss dec hex filename
734933 3028 14400 752361 b7ae9 busybox_old
734801 3028 14400 752229 b7a65 busybox_unstripped
2007-06-30 08:04:05 +00:00
Denis Vlasenko
d67cef2425
hush: fix read builtin to not read ahead past eol and to not use
...
insane amounts of stack. Testsuite updated.
2007-06-13 06:47:47 +00:00
Denis Vlasenko
b6adbf1be2
usage.c: remove reference to busybox.h
...
*: s/include "busybox.h"/include "libbb.h"
2007-05-26 19:00:18 +00:00
Denis Vlasenko
ac678ec2f1
style fixes, no code changes
2007-04-16 22:32:04 +00:00
Denis Vlasenko
6398cf477d
style fixes, no code changes.
2007-04-11 17:04:29 +00:00
Denis Vlasenko
ff131b980d
style fixes. No code changes.
2007-04-10 15:42:06 +00:00
Mike Frysinger
4423e5beef
/etc/modules.conf is a 2.6.x file while /etc/modules.conf and /etc/conf.modules are 2.4.x and older files
2007-02-08 07:03:44 +00:00
Mike Frysinger
c5d9e8ff3d
touchup style; no functional changes
2007-02-08 06:30:58 +00:00
Denis Vlasenko
06af216528
suppress warnings about easch <applet>_main() having
...
no preceding prototype
2007-02-03 17:28:39 +00:00
Denis Vlasenko
322661d025
preparatory patch for -Wwrite-strings #6
2007-01-29 23:43:52 +00:00
Denis Vlasenko
cf70433173
modprobe: reformat to match bbox style
2006-10-27 15:12:50 +00:00
Denis Vlasenko
d3d004dd35
last nail into error_msg() (de)capitalization
2006-10-27 09:02:31 +00:00
Denis Vlasenko
d18a3a20db
use skip_whitespace where appropriate
2006-10-25 12:46:03 +00:00
Denis Vlasenko
e1a0d486e4
message string changes, mostly for consistency, also -32 bytes in .rodata
2006-10-20 13:28:22 +00:00
Denis Vlasenko
ea62077b85
add open_read_close() and similar stuff
2006-10-14 02:23:43 +00:00
Denis Vlasenko
67b23e6043
getopt_ulflags -> getopt32.
...
It is impossible to formulate sane ABI based on
size of ulong because it can be 32-bit or 64-bit.
Basically it means that you cannot portably use
more that 32 option chars in one call anyway...
Make it explicit.
2006-10-03 21:00:06 +00:00
Rob Landley
4b5827a69b
Patch from Yann Morin so modprobe won't return failure if the module gets
...
loaded while it's running (ala multi-device hotplug).
2006-08-22 23:50:11 +00:00
Rob Landley
081e38483e
Remove xcalloc() and convert its callers to xzalloc(). About half of them
...
were using "1" as one of the arguments anyway, and as for the rest a multiply
and a push isn't noticeably bigger than pushing two arguments on the stack.
2006-08-03 20:07:35 +00:00
Rob Landley
d921b2ecc0
Remove bb_ prefixes from xfuncs.c (and a few other places), consolidate
...
things like xasprintf() into xfuncs.c, remove xprint_file_by_name() (it only
had one user), clean up lots of #includes... General cleanup pass. What I've
been doing for the last couple days.
And it conflicts! I've removed httpd.c from this checkin due to somebody else
touching that file. It builds for me. I have to catch a bus. (Now you know
why I'm looking forward to Mercurial.)
2006-08-03 15:41:12 +00:00
Rob Landley
bf30c69a38
Patch from Yann Morin to fix bug 941, underscores in module aliases.
2006-07-20 17:36:18 +00:00
Rob Landley
3b0cfb40a5
Patch from Yann Morin to look for modules.conf in the right place on 2.6.
...
Fixes http://bugs.busybox.net/view.php?id=942
2006-07-19 21:33:42 +00:00
Mike Frysinger
135cee3741
Jean Wolter writes: modprobe checks, whether a module is already loaded. The function used for this currently always returns 0.
2006-06-21 23:03:37 +00:00
Rob Landley
d760560c52
Attempt at fixing bug 836, vaguely based on patch from somebody named
...
clausmuus, forwarded to me by Yann E. Morin.
2006-06-14 01:51:16 +00:00
Rob Landley
c7ddefc062
Attempt at fixing bug 815 by upgrading bb_spawn() so that builtins are at
...
the start of the path. (This should be under the same config option as
the standalone shell, but right now that's buried in the shell menu.)
Also add the ability to specify CONFIG_BUSYBOX_EXEC_PATH with /proc/self/exe
as an overrideable default.
2006-06-14 01:24:33 +00:00
Bernhard Reutner-Fischer
deda6a5c0d
- move #include busybox.h to the very top so we pull in the config
...
and eventual platform specific includes in early.
- remove two supposedly superfluous newlines from ...error_msg() in modprobe
and use shorter boilerplate while at it.
2006-06-03 19:35:15 +00:00
Bernhard Reutner-Fischer
2c351a8f98
- patch from Yann E. Morin: makes modprobe understand shell patterns
...
(especially '*') in module aliases, such as:
"alias usb:v0582p0075d*dc*dsc*dp*ic*isc*ip* snd_usb_audio"
Fixes bug #889
842162 10244 645924 1498330 16dcda busybox.old-4.1.20060603-1948
842178 10244 645924 1498346 16dcea busybox.new-4.1.20060603-1948
2006-06-03 19:08:49 +00:00
Bernhard Reutner-Fischer
e3c150bc67
- cleanup memory if opening aliases failed and cleanup was requested.
2006-05-19 11:24:28 +00:00
Rob Landley
3afb070e6d
Avoid a memory leak pointed out by Lucas C. Villa Real.
2006-05-18 20:41:43 +00:00
Rob Landley
a389651115
Remove bb_strlen() in favor of -fno-builtin-strlen. Saves as many bytes
...
as the old optimization did (actually does slightly better under gcc 4.0), and
simplifies the code.
2006-05-07 20:20:34 +00:00
Rob Landley
72615752db
Modprobe update from Ignacio García Pérez, updating support for modprobe.conf.
2006-04-10 16:09:52 +00:00