projects/linux·commit 6fedb0ff

Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux

6fedb0ff · Linus Torvalds <[email protected]> · 2014-08-16 09:24:41 -06:00

Pull module fix from Rusty Russell:
 "Nasty potential bug if someone uses a known module param with an
  invalid value (we don't fail unknown module params any more, just
  warn)"

* tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
  module: Clean up ro/nx after early module load failures
Commit
6fedb0ff32e6bfcc408a8d52c68b8bfe4e3d945b
Parents
90c80969 · ff7e0055

Merge commit. Changes below are compared with the first parent: 90c80969.

Changes

1 files changed · +5 −0

FileStatusAddDelContent
kernel/module.cmodified+5−0View file

kernel/module.c

View file
diff --git a/kernel/module.c b/kernel/module.c
index 6f69463..03214bd 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -3304,6 +3304,11 @@ static int load_module(struct load_info *info, const char __user *uargs,
mutex_lock(&module_mutex);
module_bug_cleanup(mod);
mutex_unlock(&module_mutex);
+
+ /* we can't deallocate the module until we clear memory protection */
+ unset_module_init_ro_nx(mod);
+ unset_module_core_ro_nx(mod);
+
ddebug_cleanup:
dynamic_debug_remove(info->debug);
synchronize_sched();