diff options
author | Alan Cox <alan@linux.intel.com> | 2012-05-03 17:24:08 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-05-04 19:58:47 -0400 |
commit | d29f3ef39be4eec0362b985305fc526d9be318cf (patch) | |
tree | 35da6af15a899ca767841b864cb1ef290a0f3d4a /net/bluetooth/rfcomm/tty.c | |
parent | d739e65bb21d34f0f5d3bf4048410e534fbec148 (diff) |
tty_lock: Localise the lock
In each remaining case the tty_lock is associated with a specific tty. This
means we can now lock on a per tty basis. We do need tty_lock_pair() for
the pty case. Uglier but still a step in the right direction.
[fixed up calls in 3 missing drivers - gregkh]
Signed-off-by: Alan Cox <alan@linux.intel.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/bluetooth/rfcomm/tty.c')
-rw-r--r-- | net/bluetooth/rfcomm/tty.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/bluetooth/rfcomm/tty.c b/net/bluetooth/rfcomm/tty.c index d1820ff14aee..aa5d73b786ac 100644 --- a/net/bluetooth/rfcomm/tty.c +++ b/net/bluetooth/rfcomm/tty.c | |||
@@ -710,9 +710,9 @@ static int rfcomm_tty_open(struct tty_struct *tty, struct file *filp) | |||
710 | break; | 710 | break; |
711 | } | 711 | } |
712 | 712 | ||
713 | tty_unlock(); | 713 | tty_unlock(tty); |
714 | schedule(); | 714 | schedule(); |
715 | tty_lock(); | 715 | tty_lock(tty); |
716 | } | 716 | } |
717 | set_current_state(TASK_RUNNING); | 717 | set_current_state(TASK_RUNNING); |
718 | remove_wait_queue(&dev->wait, &wait); | 718 | remove_wait_queue(&dev->wait, &wait); |