tty: Check tty->count instead of TTY_CLOSING in tty_reopen()
authorPeter Hurley <[email protected]>
Wed, 5 Nov 2014 17:12:48 +0000 (12:12 -0500)
committerGreg Kroah-Hartman <[email protected]>
Thu, 6 Nov 2014 02:24:10 +0000 (18:24 -0800)
commit216030ec55e08646be629ee32725c0189ad74c9a
treee8ca124d3b1e01ce592a382572dd962317e3dd61
parent5d93e748957336de1f28e7356bb43d6da01718bc
tty: Check tty->count instead of TTY_CLOSING in tty_reopen()

Although perhaps not obvious, the TTY_CLOSING bit is set when the
tty count has been decremented to 0 (which occurs while holding
tty_lock). The only other case when tty count is 0 during a re-open
is when a legacy BSD pty master has been opened in parallel but
after the pty slave, which is unsupported and returns an error.

Thus !tty->count contains the complete set of degenerate conditions
under which a tty open fails.

Reviewed-by: Alan Cox <[email protected]>
Signed-off-by: Peter Hurley <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
drivers/tty/tty_io.c