modprobe_small: make rmmod to NOT remove dependencies. Closes 5162
authorDenys Vlasenko <vda.linux@googlemail.com>
Tue, 25 Sep 2012 18:37:38 +0000 (20:37 +0200)
committerDenys Vlasenko <vda.linux@googlemail.com>
Tue, 25 Sep 2012 18:37:38 +0000 (20:37 +0200)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
modutils/modprobe-small.c

index bd855f628ce3c58a63d79336411ed4bf7f069108..5b78363445dd651452b53fb8eb786d882a0b36d7 100644 (file)
@@ -594,11 +594,18 @@ static void process_module(char *name, const char *cmdline_options)
                                bb_perror_msg("remove '%s'", name);
                        goto ret;
                }
-               /* N.B. we do not stop here -
+
+               if (applet_name[0] == 'r') {
+                       /* rmmod: do not remove dependencies, exit */
+                       goto ret;
+               }
+
+               /* modprobe -r: we do not stop here -
                 * continue to unload modules on which the module depends:
                 * "-r --remove: option causes modprobe to remove a module.
                 * If the modules it depends on are also unused, modprobe
-                * will try to remove them, too." */
+                * will try to remove them, too."
+                */
        }
 
        if (!info) {