diff options
author | Arnd Bergmann <arnd@arndb.de> | 2008-05-20 19:16:54 +0200 |
---|---|---|
committer | Jonathan Corbet <corbet@lwn.net> | 2008-07-02 15:06:26 -0600 |
commit | 78dccb46ddc2ff460c8b4d5ec0886964bd4b59e5 (patch) | |
tree | 4fea52a5790160150ee3bdcd3e4ba9711258045d | |
parent | 8702965848ed4bee27486a3e3d2ae34ebba6dd83 (diff) | |
download | blackbird-op-linux-78dccb46ddc2ff460c8b4d5ec0886964bd4b59e5.tar.gz blackbird-op-linux-78dccb46ddc2ff460c8b4d5ec0886964bd4b59e5.zip |
uml-harddog: BKL pushdown
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
-rw-r--r-- | arch/um/drivers/harddog_kern.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/um/drivers/harddog_kern.c b/arch/um/drivers/harddog_kern.c index a9ad4bd6d953..d332503fa1be 100644 --- a/arch/um/drivers/harddog_kern.c +++ b/arch/um/drivers/harddog_kern.c @@ -66,6 +66,7 @@ static int harddog_open(struct inode *inode, struct file *file) int err = -EBUSY; char *sock = NULL; + lock_kernel(); spin_lock(&lock); if(timer_alive) goto err; @@ -82,9 +83,11 @@ static int harddog_open(struct inode *inode, struct file *file) timer_alive = 1; spin_unlock(&lock); + unlock_kernel(); return nonseekable_open(inode, file); err: spin_unlock(&lock); + unlock_kernel(); return err; } |