diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-07-09 00:14:54 (GMT) |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-07-09 00:14:54 (GMT) |
commit | 9d993ccb004f93b745d1557ab034928d995dad59 (patch) | |
tree | 215394779cca168f57e48fda3cf8c91f451a42c8 | |
parent | 45820c294fe1b1a9df495d57f40585ef2d069a39 (diff) | |
parent | 758556bdc1c8a8dffea0ea9f9df891878cc2468c (diff) | |
download | linux-9d993ccb004f93b745d1557ab034928d995dad59.tar.xz |
Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux
Pull module fix from Rusty Russell:
"Single fix: missing rbtree removal in the module load failure path.
Easy to trigger with bad params.
Thanks to Peter Zijlstra and Arthur Marsh for going around on this
one"
* tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
module: Fix load_module() error path
-rw-r--r-- | kernel/module.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/module.c b/kernel/module.c index 3e0e197..4d2b82e 100644 --- a/kernel/module.c +++ b/kernel/module.c @@ -3557,6 +3557,7 @@ static int load_module(struct load_info *info, const char __user *uargs, mutex_lock(&module_mutex); /* Unlink carefully: kallsyms could be walking list. */ list_del_rcu(&mod->list); + mod_tree_remove(mod); wake_up_all(&module_wq); /* Wait for RCU-sched synchronizing before releasing mod->list. */ synchronize_sched(); |