tty: Remove tty_port::close_wait
With the removal of tty_wait_until_sent_from_close(), tty drivers no longer wait during open for parallel closes to complete (instead, the tty core waits before calling the driver open() method). Thus, the close_wait waitqueue is no longer used for waiting. Remove struct tty_port::close_wait. Signed-off-by: Peter Hurley <peter@hurleysoftware.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
b140dfe622
commit
cc2aaabfd6
@ -1049,7 +1049,6 @@ static void rp_close(struct tty_struct *tty, struct file *filp)
|
||||
mutex_unlock(&port->mutex);
|
||||
tty_port_tty_set(port, NULL);
|
||||
|
||||
wake_up_interruptible(&port->close_wait);
|
||||
complete_all(&info->close_wait);
|
||||
atomic_dec(&rp_num_ports_open);
|
||||
|
||||
|
@ -1071,7 +1071,6 @@ static void rs_close(struct tty_struct *tty, struct file * filp)
|
||||
wake_up_interruptible(&port->open_wait);
|
||||
}
|
||||
port->flags &= ~(ASYNC_NORMAL_ACTIVE|ASYNC_CLOSING);
|
||||
wake_up_interruptible(&port->close_wait);
|
||||
local_irq_restore(flags);
|
||||
}
|
||||
|
||||
|
@ -3655,7 +3655,6 @@ rs_close(struct tty_struct *tty, struct file * filp)
|
||||
wake_up_interruptible(&info->port.open_wait);
|
||||
}
|
||||
info->port.flags &= ~(ASYNC_NORMAL_ACTIVE|ASYNC_CLOSING);
|
||||
wake_up_interruptible(&info->port.close_wait);
|
||||
local_irq_restore(flags);
|
||||
|
||||
/* port closed */
|
||||
|
@ -1437,7 +1437,6 @@ static void uart_close(struct tty_struct *tty, struct file *filp)
|
||||
clear_bit(ASYNCB_CLOSING, &port->flags);
|
||||
spin_unlock_irq(&port->lock);
|
||||
wake_up_interruptible(&port->open_wait);
|
||||
wake_up_interruptible(&port->close_wait);
|
||||
|
||||
mutex_unlock(&port->mutex);
|
||||
|
||||
|
@ -22,7 +22,6 @@ void tty_port_init(struct tty_port *port)
|
||||
memset(port, 0, sizeof(*port));
|
||||
tty_buffer_init(port);
|
||||
init_waitqueue_head(&port->open_wait);
|
||||
init_waitqueue_head(&port->close_wait);
|
||||
init_waitqueue_head(&port->delta_msr_wait);
|
||||
mutex_init(&port->mutex);
|
||||
mutex_init(&port->buf_mutex);
|
||||
@ -520,7 +519,6 @@ void tty_port_close_end(struct tty_port *port, struct tty_struct *tty)
|
||||
wake_up_interruptible(&port->open_wait);
|
||||
}
|
||||
port->flags &= ~(ASYNC_NORMAL_ACTIVE | ASYNC_CLOSING);
|
||||
wake_up_interruptible(&port->close_wait);
|
||||
spin_unlock_irqrestore(&port->lock, flags);
|
||||
}
|
||||
EXPORT_SYMBOL(tty_port_close_end);
|
||||
|
@ -227,7 +227,6 @@ struct tty_port {
|
||||
int blocked_open; /* Waiting to open */
|
||||
int count; /* Usage count */
|
||||
wait_queue_head_t open_wait; /* Open waiters */
|
||||
wait_queue_head_t close_wait; /* Close waiters */
|
||||
wait_queue_head_t delta_msr_wait; /* Modem status change */
|
||||
unsigned long flags; /* TTY flags ASY_*/
|
||||
unsigned char console:1, /* port is a console */
|
||||
|
Loading…
Reference in New Issue
Block a user