diff options
author | Alan Cox <alan@redhat.com> | 2008-10-13 10:40:43 +0100 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-10-13 09:51:41 -0700 |
commit | 934e6ebf96e8c1a0f299e64129fdaebc1132a427 (patch) | |
tree | ab4bd754997b097f06a5cfefd9e3671d56e628f4 /drivers/s390/char | |
parent | 2cb5998b5f0ccc886fdda3509059eef297b49577 (diff) | |
download | op-kernel-dev-934e6ebf96e8c1a0f299e64129fdaebc1132a427.zip op-kernel-dev-934e6ebf96e8c1a0f299e64129fdaebc1132a427.tar.gz |
tty: Redo current tty locking
Currently it is sometimes locked by the tty mutex and sometimes by the
sighand lock. The latter is in fact correct and now we can hand back referenced
objects we can fix this up without problems around sleeping functions.
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/s390/char')
-rw-r--r-- | drivers/s390/char/fs3270.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/s390/char/fs3270.c b/drivers/s390/char/fs3270.c index 3ef5425..84fbc90 100644 --- a/drivers/s390/char/fs3270.c +++ b/drivers/s390/char/fs3270.c @@ -431,6 +431,7 @@ fs3270_open(struct inode *inode, struct file *filp) tty = get_current_tty(); if (!tty || tty->driver->major != IBM_TTY3270_MAJOR) { tty_kref_put(tty); + mutex_unlock(&tty_mutex); rc = -ENODEV; goto out; } |