summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlan Cox <alan@lxorguk.ukuu.org.uk>2008-04-30 00:53:23 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2008-04-30 08:29:39 -0700
commitf433c65b8acb5346e6fefff4e4b97711c987ccf9 (patch)
treef4b2f5dd3b47ba3051a9c495d413407b4338fd91
parentb190e178f63e8dad7755054e02dc18a24ea6f0ac (diff)
downloadlinux-f433c65b8acb5346e6fefff4e4b97711c987ccf9.tar.gz
stallion: Prepare for BKL push down
Remove broken softcar functions, wrap ioctl handler in BKL

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/stallion.c15
1 files changed, 3 insertions, 12 deletions
diff --git a/drivers/char/stallion.c b/drivers/char/stallion.c
index 874aaa08e956..983244ab1362 100644
--- a/drivers/char/stallion.c
+++ b/drivers/char/stallion.c
@@ -1273,18 +1273,9 @@ static int stl_ioctl(struct tty_struct *tty, struct file *file, unsigned int cmd
 
 	rc = 0;
 
+	lock_kernel();
+
 	switch (cmd) {
-	case TIOCGSOFTCAR:
-		rc = put_user(((tty->termios->c_cflag & CLOCAL) ? 1 : 0),
-			(unsigned __user *) argp);
-		break;
-	case TIOCSSOFTCAR:
-		if (get_user(ival, (unsigned int __user *) arg))
-			return -EFAULT;
-		tty->termios->c_cflag =
-				(tty->termios->c_cflag & ~CLOCAL) |
-				(ival ? CLOCAL : 0);
-		break;
 	case TIOCGSERIAL:
 		rc = stl_getserial(portp, argp);
 		break;
@@ -1308,7 +1299,7 @@ static int stl_ioctl(struct tty_struct *tty, struct file *file, unsigned int cmd
 		rc = -ENOIOCTLCMD;
 		break;
 	}
-
+	unlock_kernel();
 	return rc;
 }