void tty_port_hangup(struct tty_port *port) { struct tty_struct *tty; unsigned long flags; spin_lock_irqsave(&port->lock, flags); port->count = 0; port->flags &= ~ASYNC_NORMAL_ACTIVE; tty = port->tty; port->tty = NULL; if (tty) set_bit(TTY_IO_ERROR, &tty->flags); spin...
>>> @@ -225,15 +232,13 @@ void tty_port_hangup(struct tty_port *port) >> spin_lock_irqsave(&port->lock, flags); >> port->count = 0; >> port->flags &= ~ASYNC_NORMAL_ACTIVE; >> - if (port->tty) { >> + if (port->tty) >> set_bit(TTY_IO_ERROR, &port->tty->f...
> tty_port_close_start when the port has not been initialised (successfully > opened). This was previously only done for wait_until_sent but there's > no reason to call flush_buffer or to honour port drain delay either. > The latter could cause a failed open to stall for up to two ...