aboutsummaryrefslogtreecommitdiffstats
path: root/toolbox/rmmod.c
diff options
context:
space:
mode:
authorVishal Bhoj <vishal.bhoj@linaro.org>2012-05-14 16:04:12 +0000
committerRicardo Cerqueira <cyanogenmod@cerqueira.org>2012-07-10 23:09:00 +0100
commit6894c59c200cbee446bb7df846a85d8b71bf0b1e (patch)
treeb053606cb0e8d4aa3483a10c6b63f68e7c03826f /toolbox/rmmod.c
parent826d75fb6dcefe8a6c6d4d54a7d215553945812a (diff)
downloadsystem_core-6894c59c200cbee446bb7df846a85d8b71bf0b1e.tar.gz
system_core-6894c59c200cbee446bb7df846a85d8b71bf0b1e.tar.bz2
system_core-6894c59c200cbee446bb7df846a85d8b71bf0b1e.zip
toolbox: rmmod: fix module unloading
Replace "-" with "_" in module name. This would keep rmmod compatible with module-init-tools version of rmmod Change-Id: I4470d9a98bc2f299acd94859fca4403aee279d2b Signed-off-by: Vishal Bhoj <vishal.bhoj@linaro.org>
Diffstat (limited to 'toolbox/rmmod.c')
-rw-r--r--toolbox/rmmod.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/toolbox/rmmod.c b/toolbox/rmmod.c
index 25257cc3..c7e0d6ac 100644
--- a/toolbox/rmmod.c
+++ b/toolbox/rmmod.c
@@ -10,7 +10,7 @@ extern int delete_module(const char *, unsigned int);
int rmmod_main(int argc, char **argv)
{
- int ret;
+ int ret, i;
char *modname, *dot;
/* make sure we've got an argument */
@@ -31,6 +31,15 @@ int rmmod_main(int argc, char **argv)
if (dot)
*dot = '\0';
+ /* Replace "-" with "_". This would keep rmmod
+ * compatible with module-init-tools version of
+ * rmmod
+ */
+ for (i = 0; modname[i] != '\0'; i++) {
+ if (modname[i] == '-')
+ modname[i] = '_';
+ }
+
/* pass it to the kernel */
ret = delete_module(modname, O_NONBLOCK | O_EXCL);
if (ret != 0) {