diff --git a/kernel/module.c b/kernel/module.c
index e058aedf6b932d35e23a3c0acb18ff3cb01b78c1..5aad477ddc79c94567c02e9ee704f1eb71fa1b66 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -1670,6 +1670,9 @@ static struct module *load_module(void __user *umod,
 		goto free_mod;
 	}
 
+	/* Userspace could have altered the string after the strlen_user() */
+	args[arglen - 1] = '\0';
+
 	if (find_module(mod->name)) {
 		err = -EEXIST;
 		goto free_mod;