From 140def848c1a5997383a2954590663b55155e169 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Tue, 26 May 2009 12:48:34 +0200 Subject: modprobe: fix modprobe -r. closes bug 315 Signed-off-by: Denys Vlasenko --- modutils/modprobe.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/modutils/modprobe.c b/modutils/modprobe.c index d57dbdf..54cd84c 100644 --- a/modutils/modprobe.c +++ b/modutils/modprobe.c @@ -114,7 +114,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; } @@ -350,7 +352,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 { DBG("adding module %s", *argv); -- cgit v1.1