This looks like a cut-and-paste from functionality that no-longer
needs the bkl Just remove it. Also, rewrite slightly so that it looks
closer to sys_execve on other architectures.
Signed-off-by: John Kacur <jkacur@redhat.com>
Reviewed-by: Frederic Weisbecker <fweisbec@gmail.com>
Acked-by: David Howells <dhowells@redhat.com>
Cc: Koichi Yasutake <yasutake.koichi@jp.panasonic.com>
LKML-Reference: <alpine.LFD.2.00.
0910130016540.3658@localhost.localdomain>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
        char *filename;
        int error;
 
-       lock_kernel();
-
        filename = getname(name);
        error = PTR_ERR(filename);
-       if (!IS_ERR(filename)) {
-               error = do_execve(filename, argv, envp, __frame);
-               putname(filename);
-       }
-
-       unlock_kernel();
+       if (IS_ERR(filename))
+               return error;
+       error = do_execve(filename, argv, envp, __frame);
+       putname(filename);
        return error;
 }