projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
764a4a8
)
AoE: cdev lock_kernel() pushdown
author
Jonathan Corbet
<corbet@lwn.net>
Thu, 15 May 2008 16:03:09 +0000
(10:03 -0600)
committer
Jonathan Corbet
<corbet@lwn.net>
Fri, 20 Jun 2008 20:03:43 +0000
(14:03 -0600)
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
drivers/block/aoe/aoechr.c
patch
|
blob
|
history
diff --git
a/drivers/block/aoe/aoechr.c
b/drivers/block/aoe/aoechr.c
index e8e60e7a2e70eb31b17670537dc3291283d9f408..d1de68a3192088b11f20317d5405d05c35cd5071 100644
(file)
--- a/
drivers/block/aoe/aoechr.c
+++ b/
drivers/block/aoe/aoechr.c
@@
-7,6
+7,7
@@
#include <linux/hdreg.h>
#include <linux/blkdev.h>
#include <linux/delay.h>
+#include <linux/smp_lock.h>
#include "aoe.h"
enum {
@@
-174,12
+175,16
@@
aoechr_open(struct inode *inode, struct file *filp)
{
int n, i;
+ lock_kernel();
n = iminor(inode);
filp->private_data = (void *) (unsigned long) n;
for (i = 0; i < ARRAY_SIZE(chardevs); ++i)
- if (chardevs[i].minor == n)
+ if (chardevs[i].minor == n) {
+ unlock_kernel();
return 0;
+ }
+ unlock_kernel();
return -EINVAL;
}