Revert "tty: Fix ldisc crash on reopened tty"

This reverts commit 71472fa9c5.  It caused
merge issues, and Dmitry found some review issues.

Reported-by: Dmitry Vyukov <dvyukov@google.com>
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Mikulas Patocka <mpatocka@redhat.com>
Cc: Peter Hurley <peter@hurleysoftware.com>
Cc: Michael Neuling <mikey@neuling.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Greg Kroah-Hartman 2017-03-29 07:50:49 +02:00
parent acbdad8dd1
commit 896d81fefe
1 changed files with 5 additions and 6 deletions

View File

@ -669,17 +669,16 @@ int tty_ldisc_reinit(struct tty_struct *tty, int disc)
tty_ldisc_put(tty->ldisc);
}
/* switch the line discipline */
tty->ldisc = ld;
tty_set_termios_ldisc(tty, disc);
retval = tty_ldisc_open(tty, ld);
retval = tty_ldisc_open(tty, tty->ldisc);
if (retval) {
if (!WARN_ON(disc == N_TTY)) {
tty_ldisc_put(ld);
ld = NULL;
tty_ldisc_put(tty->ldisc);
tty->ldisc = NULL;
}
}
/* switch the line discipline */
smp_store_release(&tty->ldisc, ld);
return retval;
}