Merge branch 'bkl-arch-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
authorLinus Torvalds <torvalds@linux-foundation.org>
Wed, 9 Dec 2009 16:07:51 +0000 (08:07 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 9 Dec 2009 16:07:51 +0000 (08:07 -0800)
* 'bkl-arch-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  mn10300: Remove the BKL from sys_execve
  m68knommu: Remove the BKL from sys_execve
  m68k: Remove the BKL from sys_execve
  h83000: Remove BKL from sys_execve
  frv: Remove the BKL from sys_execve
  blackfin: Remove the BKL from sys_execve
  um: Remove BKL from mmapper
  um: Remove BKL from random
  s390: Remove BKL from prng

arch/blackfin/kernel/process.c
arch/frv/kernel/process.c
arch/h8300/kernel/process.c
arch/m68knommu/kernel/process.c
arch/mn10300/kernel/process.c
arch/s390/crypto/prng.c
arch/um/drivers/mmapper_kern.c
arch/um/drivers/random.c

index 5cc7e2e9e4156f202bd9bc10f7c58cfa72e0bdbf..45876427eb2dca826359b0767ace3d1523bc6c5c 100644 (file)
@@ -215,22 +215,18 @@ copy_thread(unsigned long clone_flags,
 /*
  * sys_execve() executes a new program.
  */
-
 asmlinkage int sys_execve(char __user *name, char __user * __user *argv, char __user * __user *envp)
 {
        int error;
        char *filename;
        struct pt_regs *regs = (struct pt_regs *)((&name) + 6);
 
-       lock_kernel();
        filename = getname(name);
        error = PTR_ERR(filename);
        if (IS_ERR(filename))
-               goto out;
+               return error;
        error = do_execve(filename, argv, envp, regs);
        putname(filename);
- out:
-       unlock_kernel();
        return error;
 }
 
index 904255938216520e1e5661cb21e1765796efbb71..21d0fd19276dffef3a87e888cd213aca9a688469 100644 (file)
@@ -255,15 +255,12 @@ asmlinkage int sys_execve(char __user *name, char __user * __user *argv, char __
        int error;
        char * filename;
 
-       lock_kernel();
        filename = getname(name);
        error = PTR_ERR(filename);
        if (IS_ERR(filename))
-               goto out;
+               return error;
        error = do_execve(filename, argv, envp, __frame);
        putname(filename);
- out:
-       unlock_kernel();
        return error;
 }
 
index e2f33d0f99698ceb03212a5f46fa1e61ccd72cc1..bd883faa983d898eac8d70b873df93f37eb4fad7 100644 (file)
@@ -218,15 +218,12 @@ asmlinkage int sys_execve(char *name, char **argv, char **envp,int dummy,...)
        char * filename;
        struct pt_regs *regs = (struct pt_regs *) ((unsigned char *)&dummy-4);
 
-       lock_kernel();
        filename = getname(name);
        error = PTR_ERR(filename);
        if (IS_ERR(filename))
-               goto out;
+               return error;
        error = do_execve(filename, argv, envp, regs);
        putname(filename);
-out:
-       unlock_kernel();
        return error;
 }
 
index 8f8f4abab2ff16419afc8abb35fffdf4c4f63276..5c9ecd427090c0a8b5c701b2bdddf21072d44582 100644 (file)
@@ -352,15 +352,12 @@ asmlinkage int sys_execve(char *name, char **argv, char **envp)
        char * filename;
        struct pt_regs *regs = (struct pt_regs *) &name;
 
-       lock_kernel();
        filename = getname(name);
        error = PTR_ERR(filename);
        if (IS_ERR(filename))
-               goto out;
+               return error;
        error = do_execve(filename, argv, envp, regs);
        putname(filename);
-out:
-       unlock_kernel();
        return error;
 }
 
index 892cce82867e3d72c60c4846c2be6b2f0310231a..ec8a21df1142010a2c3bb4e08f5ea6e4615f12dc 100644 (file)
@@ -275,16 +275,12 @@ asmlinkage long sys_execve(char __user *name,
        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;
 }
 
index b49c00ce65e92f4e0e9b584ce0c61e3aaaf37da1..a3209906739e8dea52ee28bf51968af73172056a 100644 (file)
@@ -6,7 +6,6 @@
 #include <linux/fs.h>
 #include <linux/init.h>
 #include <linux/kernel.h>
-#include <linux/smp_lock.h>
 #include <linux/miscdevice.h>
 #include <linux/module.h>
 #include <linux/moduleparam.h>
@@ -49,7 +48,6 @@ static unsigned char parm_block[32] = {
 
 static int prng_open(struct inode *inode, struct file *file)
 {
-       cycle_kernel_lock();
        return nonseekable_open(inode, file);
 }
 
index eb240323c40ad6a52883b079f2324c57ae9eb09f..d22f9e5c0eac5f483da649cfb7da2201c8888458 100644 (file)
@@ -16,7 +16,7 @@
 #include <linux/miscdevice.h>
 #include <linux/module.h>
 #include <linux/mm.h>
-#include <linux/smp_lock.h>
+
 #include <asm/uaccess.h>
 #include "mem_user.h"
 
@@ -78,7 +78,6 @@ out:
 
 static int mmapper_open(struct inode *inode, struct file *file)
 {
-       cycle_kernel_lock();
        return 0;
 }
 
@@ -115,18 +114,16 @@ static int __init mmapper_init(void)
        v_buf = (char *) find_iomem("mmapper", &mmapper_size);
        if (mmapper_size == 0) {
                printk(KERN_ERR "mmapper_init - find_iomem failed\n");
-               goto out;
+               return -ENODEV;
        }
+       p_buf = __pa(v_buf);
 
        err = misc_register(&mmapper_dev);
        if (err) {
                printk(KERN_ERR "mmapper - misc_register failed, err = %d\n",
                       err);
-               goto out;
+               return err;;
        }
-
-       p_buf = __pa(v_buf);
-out:
        return 0;
 }
 
index 6eabb7022a2d6c1c45a7f62327a50c4b1c88d734..4949044773ba78b93797d43701ab751b0a1bce23 100644 (file)
@@ -7,7 +7,6 @@
  * of the GNU General Public License, incorporated herein by reference.
  */
 #include <linux/sched.h>
-#include <linux/smp_lock.h>
 #include <linux/module.h>
 #include <linux/fs.h>
 #include <linux/interrupt.h>
@@ -34,8 +33,6 @@ static DECLARE_WAIT_QUEUE_HEAD(host_read_wait);
 
 static int rng_dev_open (struct inode *inode, struct file *filp)
 {
-       cycle_kernel_lock();
-
        /* enforce read-only access to this chrdev */
        if ((filp->f_mode & FMODE_READ) == 0)
                return -EINVAL;