TTY: isdn, use tty_port_close_end helper
authorJiri Slaby <jslaby@suse.cz>
Mon, 2 Apr 2012 11:54:00 +0000 (13:54 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 9 Apr 2012 18:16:57 +0000 (11:16 -0700)
The code does almost the same, so there we can leverage the helper's
code. The only difference is locking. The helper protects counts by a
spinlock. This never hurts and should be added to other code parts
too.

Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Cc: Karsten Keil <isdn@linux-pingi.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/isdn/i4l/isdn_tty.c

index ee8ba87..50d7246 100644 (file)
@@ -1699,13 +1699,8 @@ isdn_tty_close(struct tty_struct *tty, struct file *filp)
        tty_ldisc_flush(tty);
        port->tty = NULL;
        info->ncarrier = 0;
-       tty->closing = 0;
-       if (port->blocked_open) {
-               msleep_interruptible(500);
-               wake_up_interruptible(&port->open_wait);
-       }
-       port->flags &= ~(ASYNC_NORMAL_ACTIVE | ASYNC_CLOSING);
-       wake_up_interruptible(&port->close_wait);
+
+       tty_port_close_end(port, tty);
 #ifdef ISDN_DEBUG_MODEM_OPEN
        printk(KERN_DEBUG "isdn_tty_close normal exit\n");
 #endif