diff --git a/drivers/s390/char/con3215.c b/drivers/s390/char/con3215.c index e928e04080017203f3806ab14176c7ea05ba10c2..6c0116d48c74e386ff2de99d9cc86076c69b6bff 100644 --- a/drivers/s390/char/con3215.c +++ b/drivers/s390/char/con3215.c @@ -336,7 +336,11 @@ static inline void raw3215_try_io(struct raw3215_info *raw) static void raw3215_wakeup(unsigned long data) { struct raw3215_info *raw = (struct raw3215_info *) data; - tty_wakeup(raw->tty); + struct tty_struct *tty; + + tty = tty_port_tty_get(&raw->port); + tty_wakeup(tty); + tty_kref_put(tty); } /*