aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/tty_ldisc.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/char/tty_ldisc.c')
-rw-r--r--drivers/char/tty_ldisc.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/drivers/char/tty_ldisc.c b/drivers/char/tty_ldisc.c
index a58a19a6a5e1..01c70c01f64a 100644
--- a/drivers/char/tty_ldisc.c
+++ b/drivers/char/tty_ldisc.c
@@ -396,6 +396,27 @@ void tty_ldisc_enable(struct tty_struct *tty)
396} 396}
397 397
398/** 398/**
399 * tty_ldisc_flush - flush line discipline queue
400 * @tty: tty
401 *
402 * Flush the line discipline queue (if any) for this tty. If there
403 * is no line discipline active this is a no-op.
404 */
405
406void tty_ldisc_flush(struct tty_struct *tty)
407{
408 struct tty_ldisc *ld = tty_ldisc_ref(tty);
409 if (ld) {
410 if (ld->ops->flush_buffer)
411 ld->ops->flush_buffer(tty);
412 tty_ldisc_deref(ld);
413 }
414 tty_buffer_flush(tty);
415}
416
417EXPORT_SYMBOL_GPL(tty_ldisc_flush);
418
419/**
399 * tty_set_termios_ldisc - set ldisc field 420 * tty_set_termios_ldisc - set ldisc field
400 * @tty: tty structure 421 * @tty: tty structure
401 * @num: line discipline number 422 * @num: line discipline number