This fixes a regression introduced with commit 78854520 (modprobe:
revert checking for /, stop doing basename() on modprobe args,
2015-01-01) that broke modprobe options stored in /etc/modprobe.conf and
/etc/modprobe.d/*.conf.

This also fixes modprobe -r

Signed-off-by: Natanael Copa <[email protected]>
---

Testcase:

  echo "options dummy numdummies=2" > /etc/modprobe.d/dummy.conf
  modprobe dummy

It should generate 2 dummy interfaces, dummy0 and dummy1.

  modprobe -r dummy

Should remove the dummy interfaces and unload the kernel module.


 modutils/modprobe.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modutils/modprobe.c b/modutils/modprobe.c
index ce8b0b8..0e8aa9e 100644
--- a/modutils/modprobe.c
+++ b/modutils/modprobe.c
@@ -425,7 +425,7 @@ static int do_modprobe(struct module_entry *m)
 
                rc = 0;
                fn = llist_pop(&m->deps); /* we leak it */
-               m2 = get_or_add_modentry(fn);
+               m2 = 
get_or_add_modentry(bb_get_last_path_component_nostrip(fn));
 
                if (option_mask32 & OPT_REMOVE) {
                        /* modprobe -r */
-- 
2.2.2

_______________________________________________
busybox mailing list
[email protected]
http://lists.busybox.net/mailman/listinfo/busybox

Reply via email to