From: Jiri Slaby Date: Fri, 8 Dec 2006 10:38:24 +0000 (-0800) Subject: [PATCH] Char: mxser_new, eliminate tty ldisc deref X-Git-Tag: v2.6.20-rc1~34^2~225 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=7e8bcf9add02176be7e052b1f0675f7a462eaf3d;p=linux-2.6-omap-h63xx.git [PATCH] Char: mxser_new, eliminate tty ldisc deref Use tty_ldisc_flush and tty_wakeup helpers for accessing ldisc internals. Cc: Alan Cox Signed-off-by: Jiri Slaby Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/drivers/char/mxser_new.c b/drivers/char/mxser_new.c index 8a26ce12597..71381f95556 100644 --- a/drivers/char/mxser_new.c +++ b/drivers/char/mxser_new.c @@ -1065,7 +1065,6 @@ static void mxser_close(struct tty_struct *tty, struct file *filp) unsigned long timeout; unsigned long flags; - struct tty_ldisc *ld; if (tty->index == MXSER_PORTS) return; @@ -1145,12 +1144,7 @@ static void mxser_close(struct tty_struct *tty, struct file *filp) if (tty->driver->flush_buffer) tty->driver->flush_buffer(tty); - ld = tty_ldisc_ref(tty); - if (ld) { - if (ld->flush_buffer) - ld->flush_buffer(tty); - tty_ldisc_deref(ld); - } + tty_ldisc_flush(tty); tty->closing = 0; info->event = 0; @@ -1303,9 +1297,7 @@ static void mxser_flush_buffer(struct tty_struct *tty) spin_unlock_irqrestore(&info->slock, flags); /* above added by shinhay */ - wake_up_interruptible(&tty->write_wait); - if ((tty->flags & (1 << TTY_DO_WRITE_WAKEUP)) && tty->ldisc.write_wakeup) - (tty->ldisc.write_wakeup) (tty); + tty_wakeup(tty); } /*