Commit cc4f0248 authored by Richard Weinberger's avatar Richard Weinberger

um: Use tty_port_operations->destruct

As we setup the SIGWINCH handler in tty_port_operations->activate
it makes sense to tear down it in ->destruct.
Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
parent 72383d43
...@@ -315,8 +315,22 @@ static int line_activate(struct tty_port *port, struct tty_struct *tty) ...@@ -315,8 +315,22 @@ static int line_activate(struct tty_port *port, struct tty_struct *tty)
return 0; return 0;
} }
static void unregister_winch(struct tty_struct *tty);
static void line_destruct(struct tty_port *port)
{
struct tty_struct *tty = tty_port_tty_get(port);
struct line *line = tty->driver_data;
if (line->sigio) {
unregister_winch(tty);
line->sigio = 0;
}
}
static const struct tty_port_operations line_port_ops = { static const struct tty_port_operations line_port_ops = {
.activate = line_activate, .activate = line_activate,
.destruct = line_destruct,
}; };
int line_open(struct tty_struct *tty, struct file *filp) int line_open(struct tty_struct *tty, struct file *filp)
...@@ -340,18 +354,6 @@ int line_install(struct tty_driver *driver, struct tty_struct *tty, ...@@ -340,18 +354,6 @@ int line_install(struct tty_driver *driver, struct tty_struct *tty,
return 0; return 0;
} }
static void unregister_winch(struct tty_struct *tty);
void line_cleanup(struct tty_struct *tty)
{
struct line *line = tty->driver_data;
if (line->sigio) {
unregister_winch(tty);
line->sigio = 0;
}
}
void line_close(struct tty_struct *tty, struct file * filp) void line_close(struct tty_struct *tty, struct file * filp)
{ {
struct line *line = tty->driver_data; struct line *line = tty->driver_data;
......
...@@ -105,7 +105,6 @@ static const struct tty_operations ssl_ops = { ...@@ -105,7 +105,6 @@ static const struct tty_operations ssl_ops = {
.throttle = line_throttle, .throttle = line_throttle,
.unthrottle = line_unthrottle, .unthrottle = line_unthrottle,
.install = ssl_install, .install = ssl_install,
.cleanup = line_cleanup,
.hangup = line_hangup, .hangup = line_hangup,
}; };
......
...@@ -110,7 +110,6 @@ static const struct tty_operations console_ops = { ...@@ -110,7 +110,6 @@ static const struct tty_operations console_ops = {
.set_termios = line_set_termios, .set_termios = line_set_termios,
.throttle = line_throttle, .throttle = line_throttle,
.unthrottle = line_unthrottle, .unthrottle = line_unthrottle,
.cleanup = line_cleanup,
.hangup = line_hangup, .hangup = line_hangup,
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment