aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390/char/fs3270.c
diff options
context:
space:
mode:
authorAlan Cox <alan@redhat.com>2008-10-13 05:45:52 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-10-13 12:51:44 -0400
commita90610e50b98e18385d4fbea2c9eaefb12c5a75c (patch)
tree03fd450b5d94710105a6c6f4f3f20519fd815461 /drivers/s390/char/fs3270.c
parent402fda9201ac619ea1f120996b1a142c57aeeb6b (diff)
fs3270: remove extra locks
get_current_tty now does internal locking and returns a referenced object, thus our use of tty_mutex here can go away. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/s390/char/fs3270.c')
-rw-r--r--drivers/s390/char/fs3270.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/drivers/s390/char/fs3270.c b/drivers/s390/char/fs3270.c
index 84fbc90480d..1227f4591f8 100644
--- a/drivers/s390/char/fs3270.c
+++ b/drivers/s390/char/fs3270.c
@@ -426,18 +426,14 @@ fs3270_open(struct inode *inode, struct file *filp)
426 minor = iminor(filp->f_path.dentry->d_inode); 426 minor = iminor(filp->f_path.dentry->d_inode);
427 /* Check for minor 0 multiplexer. */ 427 /* Check for minor 0 multiplexer. */
428 if (minor == 0) { 428 if (minor == 0) {
429 struct tty_struct *tty; 429 struct tty_struct *tty = get_current_tty();
430 mutex_lock(&tty_mutex);
431 tty = get_current_tty();
432 if (!tty || tty->driver->major != IBM_TTY3270_MAJOR) { 430 if (!tty || tty->driver->major != IBM_TTY3270_MAJOR) {
433 tty_kref_put(tty); 431 tty_kref_put(tty);
434 mutex_unlock(&tty_mutex);
435 rc = -ENODEV; 432 rc = -ENODEV;
436 goto out; 433 goto out;
437 } 434 }
438 minor = tty->index + RAW3270_FIRSTMINOR; 435 minor = tty->index + RAW3270_FIRSTMINOR;
439 tty_kref_put(tty); 436 tty_kref_put(tty);
440 mutex_unlock(&tty_mutex);
441 } 437 }
442 /* Check if some other program is already using fullscreen mode. */ 438 /* Check if some other program is already using fullscreen mode. */
443 fp = (struct fs3270 *) raw3270_find_view(&fs3270_fn, minor); 439 fp = (struct fs3270 *) raw3270_find_view(&fs3270_fn, minor);