summaryrefslogtreecommitdiff
path: root/modutils/modprobe.c
diff options
context:
space:
mode:
authorDenys Vlasenko2009-05-27 18:01:42 +0200
committerDenys Vlasenko2009-05-27 18:01:42 +0200
commit20cc390b9bb33cd0ab05c8bbfcd24babad7ec204 (patch)
tree876974f2abe0ae0213e5707fb551af70b73665cd /modutils/modprobe.c
parentbae3abf2c7185f0a9145ed2c97abb2d2e7bc2b40 (diff)
downloadbusybox-20cc390b9bb33cd0ab05c8bbfcd24babad7ec204.zip
busybox-20cc390b9bb33cd0ab05c8bbfcd24babad7ec204.tar.gz
post-1.14.0 fixes
hush significantly updated. fixes for acpid, awk, depmod, dhcp, gzip, mdev, modprobe, sysctl. libbb fixes. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'modutils/modprobe.c')
-rw-r--r--modutils/modprobe.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/modutils/modprobe.c b/modutils/modprobe.c
index 218a898..0339ebb 100644
--- a/modutils/modprobe.c
+++ b/modutils/modprobe.c
@@ -109,7 +109,9 @@ static void add_probe(const char *name)
struct module_entry *m;
m = get_or_add_modentry(name);
- if (m->flags & MODULE_FLAG_LOADED) {
+ if (!(option_mask32 & MODPROBE_OPT_REMOVE)
+ && (m->flags & MODULE_FLAG_LOADED)
+ ) {
DBG("skipping %s, it is already loaded", name);
return;
}
@@ -339,7 +341,7 @@ int modprobe_main(int argc UNUSED_PARAM, char **argv)
config_close(parser);
}
- if (opt & MODPROBE_OPT_INSERT_ALL) {
+ if (opt & (MODPROBE_OPT_INSERT_ALL | MODPROBE_OPT_REMOVE)) {
/* Each argument is a module name */
do {
add_probe(*argv++);