Re: [PATCH 0/4] tty: Hold write ldisc sem in tty_reopen()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Dmitry,

On Wed, Aug 29, 2018 at 03:23:49AM +0100, Dmitry Safonov wrote:
> Two fixes for potential and real issues.
> Looks worth to have in stables as we've hit it 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.
> 
> I couldn't verify that holding write lock fixes the issue as we've hit
> it only once and I've failed in reproducing it.
> But searching in lkml, Cc'ing here people who probably had the same
> crash (and in hope someone of them could give tested-by):
> 

And thanks a lot for your work on fixing these issues!

I've added Nathan (and centos-virt) to CC, because earlier Nathan was able to reliably trigger ldisc related kernel crash in Xen dom0 when running Linux 4.9 kernel, which seems similar to what your patch 2/4 is trying to fix.

Nathan's kernel crash report: https://lists.centos.org/pipermail/centos-virt/2017-August/005610.html
Example ldisc kernel crash BUG in "n_tty_receive_buf_common": https://lists.centos.org/pipermail/centos-virt/attachments/20170823/45493276/attachment.txt

CentOS bug: https://bugs.centos.org/view.php?id=13713


Thanks,

-- Pasi

> Cc: Daniel Axtens <dja@xxxxxxxxxx> 
> Cc: Dmitry Vyukov <dvyukov@xxxxxxxxxx> 
> Cc: Michael Neuling <mikey@xxxxxxxxxxx>
> Cc: Mikulas Patocka <mpatocka@xxxxxxxxxx>
> Cc: Pasi Kärkkäinen <pasik@xxxxxx>
> Cc: Peter Hurley <peter@xxxxxxxxxxxxxxxxxx>
> Cc: Sergey Senozhatsky <sergey.senozhatsky.work@xxxxxxxxx> 
> Cc: Tan Xiaojun <tanxiaojun@xxxxxxxxxx>
> (please, ignore if I Cc'ed you mistakenly)
> 
> Dmitry Safonov (4):
>   tty: Drop tty->count on tty_reopen() failure
>   tty: Hold tty_ldisc_lock() during tty_reopen()
>   tty: Lock tty pair in tty_init_dev()
>   tty/lockdep: Add ldisc_sem asserts
> 
>  drivers/tty/tty_io.c    | 21 +++++++++++++++------
>  drivers/tty/tty_ldisc.c | 12 ++++++++----
>  include/linux/tty.h     |  4 ++++
>  3 files changed, 27 insertions(+), 10 deletions(-)
> 
> -- 
> 2.13.6
> 



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux