summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlan Cox <alan@lxorguk.ukuu.org.uk>2008-04-30 09:53:19 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2008-04-30 17:29:39 +0200
commit3736113654165b5f4b8658b6a34d74631e0b7d81 (patch)
tree9dd91ef6e47e319d4826e04f0bf1994dbfd8cf00
parentisicom: prepare for lock_kernel push down (diff)
downloadlinux-3736113654165b5f4b8658b6a34d74631e0b7d81.tar.xz
linux-3736113654165b5f4b8658b6a34d74631e0b7d81.zip
isicom: istallion prepare for lock_kernel pushdown
This is an ancient driver so just wrap it in lock_kernel internally and be done. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--drivers/char/istallion.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/char/istallion.c b/drivers/char/istallion.c
index c645455c3fd1..37dc3d202c27 100644
--- a/drivers/char/istallion.c
+++ b/drivers/char/istallion.c
@@ -4433,6 +4433,8 @@ static int stli_memioctl(struct inode *ip, struct file *fp, unsigned int cmd, un
done = 0;
rc = 0;
+ lock_kernel();
+
switch (cmd) {
case COM_GETPORTSTATS:
rc = stli_getportstats(NULL, argp);
@@ -4455,6 +4457,7 @@ static int stli_memioctl(struct inode *ip, struct file *fp, unsigned int cmd, un
done++;
break;
}
+ unlock_kernel();
if (done)
return rc;
@@ -4472,6 +4475,8 @@ static int stli_memioctl(struct inode *ip, struct file *fp, unsigned int cmd, un
if (brdp->state == 0)
return -ENODEV;
+ lock_kernel();
+
switch (cmd) {
case STL_BINTR:
EBRDINTR(brdp);
@@ -4494,6 +4499,7 @@ static int stli_memioctl(struct inode *ip, struct file *fp, unsigned int cmd, un
rc = -ENOIOCTLCMD;
break;
}
+ unlock_kernel();
return rc;
}