lkml.org 
[lkml]   [2008]   [Mar]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] tty: drop the BKL for driver/ldisc ioctl methods
Now we have pushed the lock down we can stop wrapping the call with a
lock in the tty layer

Signed-off-by: Alan Cox <alan@redhat.com>

diff -u --new-file --recursive --exclude-from /usr/src/exclude linux.vanilla-2.6.25-rc5-mm1/drivers/char/tty_io.c linux-2.6.25-rc5-mm1/drivers/char/tty_io.c
--- linux.vanilla-2.6.25-rc5-mm1/drivers/char/tty_io.c 2008-03-18 15:52:20.000000000 +0000
+++ linux-2.6.25-rc5-mm1/drivers/char/tty_io.c 2008-03-18 15:58:26.000000000 +0000
@@ -3459,11 +3582,8 @@
switch (cmd) {
case TIOCSBRK:
case TIOCCBRK:
- if (tty->driver->ioctl) {
- lock_kernel();
+ if (tty->driver->ioctl)
retval = tty->driver->ioctl(tty, file, cmd, arg);
- unlock_kernel();
- }
return retval;

/* These two ioctl's always return success; even if */
@@ -3584,18 +3704,14 @@
break;
}
if (tty->driver->ioctl) {
- lock_kernel();
retval = (tty->driver->ioctl)(tty, file, cmd, arg);
- unlock_kernel();
if (retval != -ENOIOCTLCMD)
return retval;
}
ld = tty_ldisc_ref_wait(tty);
retval = -EINVAL;
if (ld->ioctl) {
- lock_kernel();
retval = ld->ioctl(tty, file, cmd, arg);
- unlock_kernel();
if (retval == -ENOIOCTLCMD)
retval = -EINVAL;
}

\
 
 \ /
  Last update: 2008-03-26 12:57    [W:0.034 / U:0.320 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site