diff options
author | Alan Cox <alan@lxorguk.ukuu.org.uk> | 2008-04-30 09:53:34 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-30 17:29:41 +0200 |
commit | d17468c73e138e1108b279acf892dd35937d43ed (patch) | |
tree | a572b8d50de0146c60f15425de03e8af92832dd5 /drivers | |
parent | tty_ioctl: soft carrier handling (diff) | |
download | linux-d17468c73e138e1108b279acf892dd35937d43ed.tar.xz linux-d17468c73e138e1108b279acf892dd35937d43ed.zip |
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>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/char/tty_io.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/drivers/char/tty_io.c b/drivers/char/tty_io.c index 2460c4c76161..35c7d2eb8b28 100644 --- a/drivers/char/tty_io.c +++ b/drivers/char/tty_io.c @@ -3459,11 +3459,8 @@ long tty_ioctl(struct file *file, unsigned int cmd, unsigned long arg) 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 +3581,14 @@ long tty_ioctl(struct file *file, unsigned int cmd, unsigned long arg) 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; } |