commit af32cc7b causes stalls on 3.18.23

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

 



Running applications under GNU Screen causes the 3.18.23 kernel to stall and
the application to hang.  Reverting commit af32cc7b, ie "tty: fix stall caused
by missing memory barrier in drivers/tty/n_tty.c", fixes the problem.

1. Compile 3.18.23 kernel (with specified .config [1], if necessary).
2. Boot kernel with Debian Wheezy userland.
3. Log in (console or SSH).
4. Run Screen (ie "screen").
5. Run "apt-get remove <package>".
6. Type "y<enter>" when asked "Do you want to continue [Y/n]?"
7. Observe no further application output, but eventually kernel messages:

[  246.333488] INFO: rcu_sched detected stalls on CPUs/tasks: { 1} (detected by 0, t=5252 jiffies, g=812, c=811, q=61)
[  246.336486] Task dump for CPU 1:
[  246.336486] apt-get         R  running task        0  2040   2031 0x00000008
[  246.336486]  ffffffffffffffff ffffffff8118cabc ffff880017fec6c0 00000000a005206a
[  246.336486]  8000000000000163 ffffc90000840000 ffff880016829028 0000c9000083ffff
[  246.336486]  ff31880016828008 ffffc90000840000 ffffc9000083ffff ffffffff81815c98
[  246.336486] Call Trace:
[  246.336486]  [<ffffffff8118cabc>] ? alloc_vmap_area+0x26c/0x310
[  246.336486]  [<ffffffff8109cd77>] ? select_idle_sibling+0x27/0x120
[  246.336486]  [<ffffffff8109d1d2>] ? select_task_rq_fair+0x362/0x610
[  246.336486]  [<ffffffff8101d21d>] ? native_sched_clock+0x2d/0x80
[  246.336486]  [<ffffffff8109e592>] ? enqueue_task_fair+0x512/0xac0
[  246.336486]  [<ffffffff81093b89>] ? resched_curr+0x39/0xc0
[  246.336486]  [<ffffffff81094230>] ? check_preempt_curr+0x80/0xa0
[  246.336486]  [<ffffffff81094264>] ? ttwu_do_wakeup+0x14/0xc0
[  246.336486]  [<ffffffff8109756b>] ? try_to_wake_up+0xdb/0x2f0
[  246.336486]  [<ffffffff8155d12d>] ? tty_unlock+0x1d/0x50
[  246.336486]  [<ffffffff811d520a>] ? pollwake+0x6a/0x70
[  246.336486]  [<ffffffff81097780>] ? try_to_wake_up+0x2f0/0x2f0
[  246.336486]  [<ffffffff810a81e4>] ? __wake_up_common+0x54/0x90
[  246.336486]  [<ffffffff8155b56e>] ? down_write+0xe/0x40
[  246.336486]  [<ffffffff8139b8cb>] ? tty_set_termios+0x2bb/0x390
[  246.336486]  [<ffffffff8139be70>] ? set_termios+0x190/0x270
[  246.336486]  [<ffffffff8139c116>] ? tty_mode_ioctl+0x1c6/0x540
[  246.336486]  [<ffffffff8155c692>] ? ldsem_down_read+0x32/0x210
[  246.336486]  [<ffffffff813963ee>] ? tty_ioctl+0x2ce/0xb10
[  246.336486]  [<ffffffff811d1e0c>] ? do_filp_open+0x4c/0xc0
[  246.336486]  [<ffffffff811d41e3>] ? do_vfs_ioctl+0x83/0x500
[  246.336486]  [<ffffffff81078b77>] ? recalc_sigpending+0x17/0x50
[  246.336486]  [<ffffffff81079985>] ? __set_task_blocked+0x35/0x80
[  246.336486]  [<ffffffff8107c32d>] ? __set_current_blocked+0x3d/0x70
[  246.336486]  [<ffffffff811d4701>] ? SyS_ioctl+0xa1/0xc0
[  246.336486]  [<ffffffff8107c53e>] ? SyS_rt_sigprocmask+0x8e/0xc0
[  246.336486]  [<ffffffff8155d4cd>] ? system_call_fastpath+0x16/0x1b

Running "lxc-start -n <container_name>" under Screen immediately triggers the
problem (before it outputs anything or the container is started) with similar
kernel messages:

[  104.706102] INFO: rcu_sched detected stalls on CPUs/tasks: { 1} (detected by 0, t=5252 jiffies, g=695, c=694, q=49)
[  104.708653] Task dump for CPU 1:
[  104.708653] lxc-start       R  running task        0  2050   2047 0x00000008
[  104.708653]  ffff8800174e2000 0000000115922590 0000000000000000 ffff880016c00648
[  104.708653]  0000000000000296 ffffffff8155b56e 0000000000000202 ffffffff8139b8cb
[  104.708653]  00007f393d2a16a0 00000500810a8828 000000bf00000005 7f1c030000008a3b
[  104.708653] Call Trace:
[  104.708653]  [<ffffffff8155b56e>] ? down_write+0xe/0x40
[  104.708653]  [<ffffffff8139b8cb>] ? tty_set_termios+0x2bb/0x390
[  104.708653]  [<ffffffff8139be70>] ? set_termios+0x190/0x270
[  104.708653]  [<ffffffff8139c116>] ? tty_mode_ioctl+0x1c6/0x540
[  104.708653]  [<ffffffff8155c692>] ? ldsem_down_read+0x32/0x210
[  104.708653]  [<ffffffff813963ee>] ? tty_ioctl+0x2ce/0xb10
[  104.708653]  [<ffffffff811c3319>] ? get_empty_filp+0xc9/0x1c0
[  104.708653]  [<ffffffff811c3434>] ? alloc_file+0x24/0xc0
[  104.708653]  [<ffffffff81205dd5>] ? anon_inode_getfile+0xd5/0x170
[  104.708653]  [<ffffffff811d41e3>] ? do_vfs_ioctl+0x83/0x500
[  104.708653]  [<ffffffff811dea18>] ? __fd_install+0x28/0x70
[  104.708653]  [<ffffffff81205ecc>] ? anon_inode_getfd+0x5c/0xa0
[  104.708653]  [<ffffffff811d4701>] ? SyS_ioctl+0xa1/0xc0
[  104.708653]  [<ffffffff8155d4cd>] ? system_call_fastpath+0x16/0x1b

I'm available for debugging (just tell me what to do) and testing if needed.

[1] http://pastebin.com/77tHG3wd

Corey
--
undefined@xxxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



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