Re: [PATCHv5 0/7] tty: Hold write ldisc sem in tty_reopen()

From: Mikulas Patocka
Date: Wed Sep 19 2018 - 16:03:51 EST




On Wed, 19 Sep 2018, Dmitry Safonov wrote:

> On Wed, 2018-09-19 at 13:35 -0400, Mikulas Patocka wrote:
> >
> > On Wed, 19 Sep 2018, Mikulas Patocka wrote:
> >
> > >
> > >
> > > On Tue, 18 Sep 2018, Dmitry Safonov wrote:
> > >
> > > > Hi all,
> > > >
> > > > Three fixes that worth to have in the @stable, as they were hit
> > by
> > > > different people, including Arista on v4.9 stable.
> > > >
> > > > And for linux-next - adding lockdep asserts for line discipline
> > changing
> > > > code, verifying that write ldisc sem will be held forthwith.
> > > >
> > > > The last patch is an optional and probably, timeout can be
> > dropped for
> > > > read_lock(). I'll do it if everyone agrees.
> > > > (Or as per discussion with Peter in v3, just convert ldisc to
> > > > a regular rwsem).
> > > >
> > > > Thanks,
> > > > Dima
> > >
> > > I confirm that this patch series fixes the crash for me.
> > >
> > > Tested-by: Mikulas Patocka <mpatocka@xxxxxxxxxx>
> >
> > I was too quick to acknowledge this patchset. It doesn't work.
> >
> > This patchset fixes the crash, but it introduces another bug - when I
> > type
> > 'reboot' on the console, it prints 'INIT: Switching to runlevel: 6'
> > and
> > then it gets stuck for 80 seconds before proceeding with the reboot.
> > When
> > I revert this patchset 'reboot' reboots the machine without any
> > delay.
> > This bug was reproduced on Debian 5 userspace on pa-risc.
>
> Thanks much for the testing, Mikulas.
> Could you try to bisect which of the patches causes it?
> The most important are 1,2,3 - probably, one of them caused it..
> I'll stare a bit into the code.

The patch 3 causes it.

The hangs during reboot take either 80 seconds, 3 minutes or 3:25.

Mikulas