sched.c: Call debug_show_all_locks() when dumping all tasks
[safe/jmp/linux-2.6] / kernel / kmod.c
index 5a7ae57..9fcb53a 100644 (file)
@@ -37,6 +37,8 @@
 #include <linux/suspend.h>
 #include <asm/uaccess.h>
 
+#include <trace/events/module.h>
+
 extern int max_threads;
 
 static struct workqueue_struct *khelper_wq;
@@ -112,6 +114,8 @@ int __request_module(bool wait, const char *fmt, ...)
                return -ENOMEM;
        }
 
+       trace_module_request(module_name, wait, _RET_IP_);
+
        ret = call_usermodehelper(modprobe_path, argv, envp,
                        wait ? UMH_WAIT_PROC : UMH_WAIT_EXEC);
        atomic_dec(&kmod_concurrent);
@@ -466,6 +470,7 @@ int call_usermodehelper_exec(struct subprocess_info *sub_info,
        int retval = 0;
 
        BUG_ON(atomic_read(&sub_info->cred->usage) != 1);
+       validate_creds(sub_info->cred);
 
        helper_lock();
        if (sub_info->path[0] == '\0')