diff options
author | Alan Cox <alan@lxorguk.ukuu.org.uk> | 2008-02-08 15:00:48 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2008-02-08 15:33:33 -0800 |
commit | 11b0cc3a4af65413ca3bb5698769e091486e0b22 (patch) | |
tree | eebb0788777410b6cad2ca926cd2ec254221e72a /drivers/net/wan/x25_asy.c | |
parent | 4600ecfcf3ad160ac0c6fcff6115f6edb081ccfa (diff) | |
download | linux-11b0cc3a4af65413ca3bb5698769e091486e0b22.tar.bz2 |
x25_asy: Fix ref count rule violation
x25_asy does not take an ldisc reference before calling the flush method.
Fix it to use the helper function we provide.
Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Krzysztof Halasa <khc@pm.waw.pl>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/net/wan/x25_asy.c')
-rw-r--r-- | drivers/net/wan/x25_asy.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/net/wan/x25_asy.c b/drivers/net/wan/x25_asy.c index 1e89d4de1bb7..5e2d763c6b5f 100644 --- a/drivers/net/wan/x25_asy.c +++ b/drivers/net/wan/x25_asy.c @@ -554,6 +554,7 @@ static void x25_asy_receive_buf(struct tty_struct *tty, const unsigned char *cp, static int x25_asy_open_tty(struct tty_struct *tty) { struct x25_asy *sl = (struct x25_asy *) tty->disc_data; + struct tty_ldisc *ld; int err; /* First make sure we're not already connected. */ @@ -572,9 +573,7 @@ static int x25_asy_open_tty(struct tty_struct *tty) if (tty->driver->flush_buffer) { tty->driver->flush_buffer(tty); } - if (tty->ldisc.flush_buffer) { - tty->ldisc.flush_buffer(tty); - } + tty_ldisc_flush(tty); /* Restore default settings */ sl->dev->type = ARPHRD_X25; |