aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/tty/nozomi.c
diff options
context:
space:
mode:
authorJiri Slaby <jslaby@suse.cz>2013-03-07 07:12:30 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-03-18 19:24:29 -0400
commitaa27a094e2c2e0cc59914e56113b860f524f4479 (patch)
treeb3cfef8d8023741107e3d3bed934f2bd4d8bf189 /drivers/tty/nozomi.c
parente4408ce3c23f8451eff7a2954694598fb8fce833 (diff)
TTY: add tty_port_tty_hangup helper
It allows for cleaning up on a considerable amount of places. They did port_get, hangup, kref_put. Now the only thing needed is to call tty_port_tty_hangup which does exactly that. And they can also decide whether to consider CLOCAL or completely ignore that. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/nozomi.c')
-rw-r--r--drivers/tty/nozomi.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/tty/nozomi.c b/drivers/tty/nozomi.c
index 2e5bbdc09e1c..d6080c3831ef 100644
--- a/drivers/tty/nozomi.c
+++ b/drivers/tty/nozomi.c
@@ -1501,12 +1501,9 @@ static void tty_exit(struct nozomi *dc)
1501 1501
1502 DBG1(" "); 1502 DBG1(" ");
1503 1503
1504 for (i = 0; i < MAX_PORT; ++i) { 1504 for (i = 0; i < MAX_PORT; ++i)
1505 struct tty_struct *tty = tty_port_tty_get(&dc->port[i].port); 1505 tty_port_tty_hangup(&dc->port[i].port, false);
1506 if (tty && list_empty(&tty->hangup_work.entry)) 1506
1507 tty_hangup(tty);
1508 tty_kref_put(tty);
1509 }
1510 /* Racy below - surely should wait for scheduled work to be done or 1507 /* Racy below - surely should wait for scheduled work to be done or
1511 complete off a hangup method ? */ 1508 complete off a hangup method ? */
1512 while (dc->open_ttys) 1509 while (dc->open_ttys)