irnet_ppp: BKL pushdown

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2008-05-20 19:16:06 +02:00 committed by Jonathan Corbet
parent af96f0103d
commit cddf63d99d
2 changed files with 4 additions and 0 deletions

View file

@ -241,6 +241,7 @@
#include <linux/module.h> #include <linux/module.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/smp_lock.h>
#include <linux/skbuff.h> #include <linux/skbuff.h>
#include <linux/tty.h> #include <linux/tty.h>
#include <linux/proc_fs.h> #include <linux/proc_fs.h>

View file

@ -479,6 +479,7 @@ dev_irnet_open(struct inode * inode,
ap = kzalloc(sizeof(*ap), GFP_KERNEL); ap = kzalloc(sizeof(*ap), GFP_KERNEL);
DABORT(ap == NULL, -ENOMEM, FS_ERROR, "Can't allocate struct irnet...\n"); DABORT(ap == NULL, -ENOMEM, FS_ERROR, "Can't allocate struct irnet...\n");
lock_kernel();
/* initialize the irnet structure */ /* initialize the irnet structure */
ap->file = file; ap->file = file;
@ -500,6 +501,7 @@ dev_irnet_open(struct inode * inode,
{ {
DERROR(FS_ERROR, "Can't setup IrDA link...\n"); DERROR(FS_ERROR, "Can't setup IrDA link...\n");
kfree(ap); kfree(ap);
unlock_kernel();
return err; return err;
} }
@ -510,6 +512,7 @@ dev_irnet_open(struct inode * inode,
file->private_data = ap; file->private_data = ap;
DEXIT(FS_TRACE, " - ap=0x%p\n", ap); DEXIT(FS_TRACE, " - ap=0x%p\n", ap);
unlock_kernel();
return 0; return 0;
} }