]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - kernel/module.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livep...
[karo-tx-linux.git] / kernel / module.c
index 912e891e0e2f1d87889a95af011bde9aff623e08..8358f4697c0c3aea77aba802833660d4082b7c13 100644 (file)
@@ -3552,6 +3552,12 @@ static int load_module(struct load_info *info, const char __user *uargs,
        synchronize_sched();
        mutex_unlock(&module_mutex);
  free_module:
+       /*
+        * Ftrace needs to clean up what it initialized.
+        * This does nothing if ftrace_module_init() wasn't called,
+        * but it must be called outside of module_mutex.
+        */
+       ftrace_release_mod(mod);
        /* Free lock-classes; relies on the preceding sync_rcu() */
        lockdep_free_key_range(mod->core_layout.base, mod->core_layout.size);