From 6f915ffbad2a4549a02bb7f3512befdc1ee83c54 Mon Sep 17 00:00:00 2001 From: Alan Cox Date: Wed, 30 Apr 2008 00:53:19 -0700 Subject: [PATCH] --- yaml --- r: 95161 b: refs/heads/master c: 3736113654165b5f4b8658b6a34d74631e0b7d81 h: refs/heads/master i: 95159: 7770274cb3c2c0cb36a229bd27feef0d4e3dadc0 v: v3 --- [refs] | 2 +- trunk/drivers/char/istallion.c | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 0c21888a0e9a..8ff673821c3e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1eac494738a0447ef0c423ee2066f85a44ab59f5 +refs/heads/master: 3736113654165b5f4b8658b6a34d74631e0b7d81 diff --git a/trunk/drivers/char/istallion.c b/trunk/drivers/char/istallion.c index c645455c3fd1..37dc3d202c27 100644 --- a/trunk/drivers/char/istallion.c +++ b/trunk/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; }