/* You need to do a 'flush_scheduled_work()' (outside the ldisc_mutex) in order to make sure any currently executing ldisc work is also flushed.  */
static int tty_ldisc_halt(struct tty_struct *tty)
/* You need to do a 'flush_scheduled_work()' (outside the ldisc_mutex) in order to make sure any currently executing ldisc work is also flushed.  */
static int tty_ldisc_halt(struct tty_struct *tty)
{
	clear_bit(TTY_LDISC, &tty->flags);
	return cancel_delayed_work_sync(&tty->buf.work);
}