INFO: task hung in con_flush_chars

Status: upstream: reported on 2026/10/04 22:33
Reported-by: syzbot+874ad4da0936d087ef4b@syzkaller.appspotmail.com
First crash: 5d14h, last: 5d14h
▶ ▼ Similar bugs (6)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: task hung in con_flush_chars (2) serial 1 2 2173d 2246d 0/29 auto-closed as invalid on 2021/01/25 20:43
upstream INFO: task hung in con_flush_chars (5) kernel 1 1 255d 255d 0/29 auto-obsoleted due to no activity on 2026/04/27 14:20
upstream INFO: task hung in con_flush_chars (3) serial 1 1 1847d 1847d 0/29 auto-closed as invalid on 2021/12/18 10:46
upstream INFO: task hung in con_flush_chars serial 1 1 2369d 2369d 0/29 auto-closed as invalid on 2020/07/13 22:15
upstream INFO: task hung in con_flush_chars (4) serial 1 4 567d 738d 0/29 auto-obsoleted due to no activity on 2025/06/20 07:50
linux-4.14 INFO: task hung in con_flush_chars 1 2 2405d 2422d 0/1 auto-closed as invalid on 2020/07/08 07:44

Sample crash report:
INFO: task syz.8.1178:10865 blocked for more than 144 seconds.
      Not tainted syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz.8.1178      state:D stack:27912 pid:10865 ppid:10516  flags:0x00004004
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5382 [inline]
 __schedule+0x15ae/0x4660 kernel/sched/core.c:6701
 schedule+0xbd/0x170 kernel/sched/core.c:6775
 schedule_timeout+0xc1/0x2d0 kernel/time/timer.c:2144
 ___down_common kernel/locking/semaphore.c:229 [inline]
 __down_common+0x30e/0x650 kernel/locking/semaphore.c:250
 down+0x80/0xd0 kernel/locking/semaphore.c:64
 console_lock+0x145/0x1b0 kernel/printk/printk.c:2686
 con_flush_chars+0x4b/0x280 drivers/tty/vt/vt.c:3315
 n_tty_write+0xef5/0x11e0 drivers/tty/n_tty.c:2411
 iterate_tty_write drivers/tty/tty_io.c:1017 [inline]
 file_tty_write+0x529/0x960 drivers/tty/tty_io.c:1088
 call_write_iter include/linux/fs.h:2018 [inline]
 new_sync_write fs/read_write.c:491 [inline]
 vfs_write+0x474/0x9a0 fs/read_write.c:584
 ksys_write+0x151/0x260 fs/read_write.c:637
 do_syscall_x64 arch/x86/entry/common.c:46 [inline]
 do_syscall_64+0x55/0xb0 arch/x86/entry/common.c:76
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7fa24f19e159
RSP: 002b:00007fa2500f4028 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
RAX: ffffffffffffffda RBX: 00007fa24f425fa0 RCX: 00007fa24f19e159
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000003
RBP: 00007fa24f23506b R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fa24f426038 R14: 00007fa24f425fa0 R15: 00007ffc6d1d3da8
 </TASK>

Showing all locks held in the system:
3 locks held by kworker/0:0/8:
 #0: ffff888017c70d38 ((wq_completion)events#2){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:2632 [inline]
 #0: ffff888017c70d38 ((wq_completion)events#2){+.+.}-{0:0}, at: process_scheduled_works+0x975/0x1600 kernel/workqueue.c:2734
 #1: ffffc900000d7d00 (deferred_process_work){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:2632 [inline]
 #1: ffffc900000d7d00 (deferred_process_work){+.+.}-{0:0}, at: process_scheduled_works+0x975/0x1600 kernel/workqueue.c:2734
 #2: ffffffff8e3d2e08 (rtnl_mutex){+.+.}-{3:3}, at: switchdev_deferred_process_work+0xe/0x20 net/switchdev/switchdev.c:104
2 locks held by kworker/0:1/9:
 #0: ffff888017c72d38 ((wq_completion)rcu_gp){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:2632 [inline]
 #0: ffff888017c72d38 ((wq_completion)rcu_gp){+.+.}-{0:0}, at: process_scheduled_works+0x975/0x1600 kernel/workqueue.c:2734
 #1: ffffc900000e7d00 ((work_completion)(&rew->rew_work)){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:2632 [inline]
 #1: ffffc900000e7d00 ((work_completion)(&rew->rew_work)){+.+.}-{0:0}, at: process_scheduled_works+0x975/0x1600 kernel/workqueue.c:2734
3 locks held by kworker/u4:1/12:
 #0: ffff888017c71938 ((wq_completion)events_unbound){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:2632 [inline]
 #0: ffff888017c71938 ((wq_completion)events_unbound){+.+.}-{0:0}, at: process_scheduled_works+0x975/0x1600 kernel/workqueue.c:2734
 #1: ffffc90000117d00 ((linkwatch_work).work){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:2632 [inline]
 #1: ffffc90000117d00 ((linkwatch_work).work){+.+.}-{0:0}, at: process_scheduled_works+0x975/0x1600 kernel/workqueue.c:2734
 #2: ffffffff8e3d2e08 (rtnl_mutex){+.+.}-{3:3}, at: linkwatch_event+0xe/0x60 net/core/link_watch.c:286
1 lock held by khungtaskd/29:
 #0: ffffffff8d1320e0 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:334 [inline]
 #0: ffffffff8d1320e0 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:786 [inline]
 #0: ffffffff8d1320e0 (rcu_read_lock){....}-{1:2}, at: debug_show_all_locks+0x55/0x290 kernel/locking/lockdep.c:6669
5 locks held by kworker/u4:4/59:
 #0: ffff888140045138 ((wq_completion)netns){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:2632 [inline]
 #0: ffff888140045138 ((wq_completion)netns){+.+.}-{0:0}, at: process_scheduled_works+0x975/0x1600 kernel/workqueue.c:2734
 #1: ffffc900015a7d00 (net_cleanup_work){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:2632 [inline]
 #1: ffffc900015a7d00 (net_cleanup_work){+.+.}-{0:0}, at: process_scheduled_works+0x975/0x1600 kernel/workqueue.c:2734
 #2: ffffffff8e3c5d90 (pernet_ops_rwsem){++++}-{3:3}, at: cleanup_net+0x140/0xb00 net/core/net_namespace.c:610
 #3: ffffffff8e3d2e08 (rtnl_mutex){+.+.}-{3:3}, at: default_device_exit_batch+0xf2/0xa00 net/core/dev.c:11788
 #4: ffffffff8d137ab8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: exp_funnel_lock kernel/rcu/tree_exp.h:324 [inline]
 #4: ffffffff8d137ab8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: synchronize_rcu_expedited+0x3da/0x880 kernel/rcu/tree_exp.h:1004
2 locks held by dhcpcd/5434:
 #0: ffffffff8e3b7bc8 (vlan_ioctl_mutex){+.+.}-{3:3}, at: sock_ioctl+0x632/0x7e0 net/socket.c:1303
 #1: ffffffff8e3d2e08 (rtnl_mutex){+.+.}-{3:3}, at: vlan_ioctl_handler+0xf1/0x630 net/8021q/vlan.c:557
2 locks held by getty/5528:
 #0: ffff888031f310a0 (&tty->ldisc_sem){++++}-{0:0}, at: tty_ldisc_ref_wait+0x25/0x70 drivers/tty/tty_ldisc.c:243
 #1: ffffc9000327b2f0 (&ldata->atomic_read_lock){+.+.}-{3:3}, at: n_tty_read+0x428/0x1370 drivers/tty/n_tty.c:2217
3 locks held by syz.6.1089/10496:
2 locks held by kworker/0:6/10555:
3 locks held by syz.8.1178/10865:
 #0: ffff888031b110a0 (&tty->ldisc_sem){++++}-{0:0}, at: tty_ldisc_ref_wait+0x25/0x70 drivers/tty/tty_ldisc.c:243
 #1: ffff888031b11130 (&tty->atomic_write_lock){+.+.}-{3:3}, at: tty_write_lock drivers/tty/tty_io.c:950 [inline]
 #1: ffff888031b11130 (&tty->atomic_write_lock){+.+.}-{3:3}, at: iterate_tty_write drivers/tty/tty_io.c:969 [inline]
 #1: ffff888031b11130 (&tty->atomic_write_lock){+.+.}-{3:3}, at: file_tty_write+0x1f6/0x960 drivers/tty/tty_io.c:1088
 #2: ffff888031b112e8 (&tty->termios_rwsem){++++}-{3:3}, at: n_tty_write+0x1f9/0x11e0 drivers/tty/n_tty.c:2378
3 locks held by syz.2.1262/11254:
 #0: ffff888031b111c0 (&tty->legacy_mutex){+.+.}-{3:3}, at: __tty_hangup+0xbb/0x690 drivers/tty/tty_io.c:590
 #1: ffff888031b110a0 (&tty->ldisc_sem){++++}-{0:0}, at: tty_ldisc_ref drivers/tty/tty_ldisc.c:263 [inline]
 #1: ffff888031b110a0 (&tty->ldisc_sem){++++}-{0:0}, at: tty_ldisc_hangup+0x31/0x4a0 drivers/tty/tty_ldisc.c:696
 #2: ffff888031b112e8 (&tty->termios_rwsem){++++}-{3:3}, at: n_tty_flush_buffer+0x30/0x230 drivers/tty/n_tty.c:363
4 locks held by syz-executor/11403:
1 lock held by syz.1.1370/11834:
 #0: ffffffff8e3d2e08 (rtnl_mutex){+.+.}-{3:3}, at: dev_ioctl+0x83c/0x1140 net/core/dev_ioctl.c:794
1 lock held by syz.1.1370/11835:
 #0: ffffffff8e3d2e08 (rtnl_mutex){+.+.}-{3:3}, at: dev_ioctl+0x83c/0x1140 net/core/dev_ioctl.c:794
2 locks held by syz.3.1375/11859:
4 locks held by syz-executor/11862:
 #0: ffff888041824e70 (&hdev->req_lock){+.+.}-{3:3}, at: hci_dev_do_close net/bluetooth/hci_core.c:521 [inline]
 #0: ffff888041824e70 (&hdev->req_lock){+.+.}-{3:3}, at: hci_unregister_dev+0x212/0x500 net/bluetooth/hci_core.c:2709
 #1: ffff8880418240b8 (&hdev->lock){+.+.}-{3:3}, at: hci_dev_close_sync+0x552/0x1170 net/bluetooth/hci_sync.c:5396
 #2: ffffffff8e541a68 (hci_cb_list_lock){+.+.}-{3:3}, at: hci_disconn_cfm include/net/bluetooth/hci_core.h:2016 [inline]
 #2: ffffffff8e541a68 (hci_cb_list_lock){+.+.}-{3:3}, at: hci_conn_hash_flush+0x99/0x220 net/bluetooth/hci_conn.c:2592
 #3: ffff88807d05ab38 (&conn->lock#2){+.+.}-{3:3}, at: l2cap_conn_del+0x7b/0x630 net/bluetooth/l2cap_core.c:1796
2 locks held by syz.9.1377/11865:
 #0: ffff888077756e20 (&sb->s_type->i_mutex_key#11){+.+.}-{3:3}, at: inode_lock include/linux/fs.h:804 [inline]
 #0: ffff888077756e20 (&sb->s_type->i_mutex_key#11){+.+.}-{3:3}, at: __sock_release net/socket.c:658 [inline]
 #0: ffff888077756e20 (&sb->s_type->i_mutex_key#11){+.+.}-{3:3}, at: sock_close+0x82/0x210 net/socket.c:1421
 #1: ffffffff8e3d2e08 (rtnl_mutex){+.+.}-{3:3}, at: raw_release+0x1e0/0x930 net/can/raw.c:402
1 lock held by syz.9.1377/11867:

=============================================

NMI backtrace for cpu 0
CPU: 0 PID: 29 Comm: khungtaskd Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/16/2026
Call Trace:
 <TASK>
 dump_stack_lvl+0x18c/0x250 lib/dump_stack.c:106
 nmi_cpu_backtrace+0x3a6/0x3e0 lib/nmi_backtrace.c:113
 nmi_trigger_cpumask_backtrace+0x17a/0x2f0 lib/nmi_backtrace.c:62
 trigger_all_cpu_backtrace include/linux/nmi.h:160 [inline]
 check_hung_uninterruptible_tasks kernel/hung_task.c:222 [inline]
 watchdog+0xf59/0xfa0 kernel/hung_task.c:379
 kthread+0x2fa/0x390 kernel/kthread.c:388
 ret_from_fork+0x48/0x80 arch/x86/kernel/process.c:152
 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:293
 </TASK>

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/10/04 22:32 linux-6.6.y a91a6aa9253c 57bbd979 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan INFO: task hung in con_flush_chars
* Struck through repros no longer work on HEAD.