syzbot


INFO: task hung in tls_sk_proto_close (2)

Status: upstream: reported on 2024/02/14 11:00
Reported-by: syzbot+ff197ad2586447153975@syzkaller.appspotmail.com
First crash: 78d, last: 78d
Similar bugs (4)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-6.1 INFO: task hung in tls_sk_proto_close 2 173d 221d 0/3 auto-obsoleted due to no activity on 2024/02/18 21:46
linux-5.15 INFO: task hung in tls_sk_proto_close 4 226d 285d 0/3 auto-obsoleted due to no activity on 2023/12/28 14:26
upstream INFO: task hung in tls_sk_proto_close C done error 963 11d 1494d 0/26 upstream: reported C repro on 2020/03/30 07:09
upstream INFO: task can't die in p9_fd_close C done 58 738d 1345d 0/26 closed as dup on 2022/08/26 12:44

Sample crash report:
INFO: task syz-executor.4:2064 blocked for more than 143 seconds.
      Not tainted 5.15.148-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz-executor.4  state:D stack:27576 pid: 2064 ppid:  3545 flags:0x00004006
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5030 [inline]
 __schedule+0x12c4/0x45b0 kernel/sched/core.c:6376
 schedule+0x11b/0x1f0 kernel/sched/core.c:6459
 schedule_timeout+0xac/0x300 kernel/time/timer.c:1860
 do_wait_for_common+0x2d9/0x480 kernel/sched/completion.c:85
 __wait_for_common kernel/sched/completion.c:106 [inline]
 wait_for_common kernel/sched/completion.c:117 [inline]
 wait_for_completion+0x48/0x60 kernel/sched/completion.c:138
 __flush_work+0x124/0x1a0 kernel/workqueue.c:3094
 __cancel_work_timer+0x519/0x6a0 kernel/workqueue.c:3181
 tls_sk_proto_close+0x121/0x980 net/tls/tls_main.c:308
 inet_release+0x174/0x1f0 net/ipv4/af_inet.c:431
 __sock_release net/socket.c:649 [inline]
 sock_close+0xcd/0x230 net/socket.c:1336
 __fput+0x3bf/0x890 fs/file_table.c:280
 task_work_run+0x129/0x1a0 kernel/task_work.c:164
 tracehook_notify_resume include/linux/tracehook.h:189 [inline]
 exit_to_user_mode_loop+0x106/0x130 kernel/entry/common.c:175
 exit_to_user_mode_prepare+0xb1/0x140 kernel/entry/common.c:208
 __syscall_exit_to_user_mode_work kernel/entry/common.c:290 [inline]
 syscall_exit_to_user_mode+0x5d/0x250 kernel/entry/common.c:301
 do_syscall_64+0x49/0xb0 arch/x86/entry/common.c:86
 entry_SYSCALL_64_after_hwframe+0x61/0xcb
RIP: 0033:0x7fa242fe8c9a
RSP: 002b:00007fff6a7cb620 EFLAGS: 00000293 ORIG_RAX: 0000000000000003
RAX: 0000000000000000 RBX: 0000000000000004 RCX: 00007fa242fe8c9a
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000003
RBP: 00007fa243119980 R08: 0000001b30920000 R09: 0000000000000296
R10: 0000000081b8c931 R11: 0000000000000293 R12: 000000000013a53f
R13: ffffffffffffffff R14: 00007fa242b6c000 R15: 000000000013a1fe
 </TASK>
INFO: task syz-executor.3:2070 blocked for more than 144 seconds.
      Not tainted 5.15.148-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz-executor.3  state:D stack:26840 pid: 2070 ppid:  3538 flags:0x00004006
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5030 [inline]
 __schedule+0x12c4/0x45b0 kernel/sched/core.c:6376
 schedule+0x11b/0x1f0 kernel/sched/core.c:6459
 schedule_timeout+0xac/0x300 kernel/time/timer.c:1860
 do_wait_for_common+0x2d9/0x480 kernel/sched/completion.c:85
 __wait_for_common kernel/sched/completion.c:106 [inline]
 wait_for_common kernel/sched/completion.c:117 [inline]
 wait_for_completion+0x48/0x60 kernel/sched/completion.c:138
 __flush_work+0x124/0x1a0 kernel/workqueue.c:3094
 __cancel_work_timer+0x519/0x6a0 kernel/workqueue.c:3181
 tls_sk_proto_close+0x121/0x980 net/tls/tls_main.c:308
 inet_release+0x174/0x1f0 net/ipv4/af_inet.c:431
 __sock_release net/socket.c:649 [inline]
 sock_close+0xcd/0x230 net/socket.c:1336
 __fput+0x3bf/0x890 fs/file_table.c:280
 task_work_run+0x129/0x1a0 kernel/task_work.c:164
 tracehook_notify_resume include/linux/tracehook.h:189 [inline]
 exit_to_user_mode_loop+0x106/0x130 kernel/entry/common.c:175
 exit_to_user_mode_prepare+0xb1/0x140 kernel/entry/common.c:208
 __syscall_exit_to_user_mode_work kernel/entry/common.c:290 [inline]
 syscall_exit_to_user_mode+0x5d/0x250 kernel/entry/common.c:301
 do_syscall_64+0x49/0xb0 arch/x86/entry/common.c:86
 entry_SYSCALL_64_after_hwframe+0x61/0xcb
RIP: 0033:0x7f9f4dafac9a
RSP: 002b:00007ffd7ffe7800 EFLAGS: 00000293 ORIG_RAX: 0000000000000003
RAX: 0000000000000000 RBX: 0000000000000004 RCX: 00007f9f4dafac9a
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000003
RBP: 00007f9f4dc2b980 R08: 0000001b30c20000 R09: 00000000000002d6
R10: 0000000088e92b03 R11: 0000000000000293 R12: 000000000013a580
R13: ffffffffffffffff R14: 00007f9f4d67e000 R15: 000000000013a23f
 </TASK>

Showing all locks held in the system:
1 lock held by khungtaskd/27:
 #0: ffffffff8c91f220 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x0/0x30
2 locks held by getty/3258:
 #0: ffff88814b39f098 (&tty->ldisc_sem){++++}-{0:0}, at: tty_ldisc_ref_wait+0x21/0x70 drivers/tty/tty_ldisc.c:252
 #1: ffffc90002bab2e8 (&ldata->atomic_read_lock){+.+.}-{3:3}, at: n_tty_read+0x6af/0x1db0 drivers/tty/n_tty.c:2158
3 locks held by kworker/0:12/6969:
 #0: ffff888011c70d38 ((wq_completion)events){+.+.}-{0:0}, at: process_one_work+0x78a/0x10c0 kernel/workqueue.c:2283
 #1: ffffc90006e07d20 ((work_completion)(&(&sw_ctx_tx->tx_work.work)->work)){+.+.}-{0:0}, at: process_one_work+0x7d0/0x10c0 kernel/workqueue.c:2285
 #2: ffff88802232e8d8 (&ctx->tx_lock){+.+.}-{3:3}, at: tx_work_handler+0x107/0x200 net/tls/tls_sw.c:2294
3 locks held by kworker/1:7/1344:
 #0: ffff888011c70d38 ((wq_completion)events){+.+.}-{0:0}, at: process_one_work+0x78a/0x10c0 kernel/workqueue.c:2283
 #1: ffffc90004fdfd20 ((work_completion)(&(&sw_ctx_tx->tx_work.work)->work)){+.+.}-{0:0}, at: process_one_work+0x7d0/0x10c0 kernel/workqueue.c:2285
 #2: ffff88807e0accd8 (&ctx->tx_lock){+.+.}-{3:3}, at: tx_work_handler+0x107/0x200 net/tls/tls_sw.c:2294
1 lock held by syz-executor.4/2064:
 #0: ffff888085bbca10 (&sb->s_type->i_mutex_key#11){+.+.}-{3:3}, at: inode_lock include/linux/fs.h:787 [inline]
 #0: ffff888085bbca10 (&sb->s_type->i_mutex_key#11){+.+.}-{3:3}, at: __sock_release net/socket.c:648 [inline]
 #0: ffff888085bbca10 (&sb->s_type->i_mutex_key#11){+.+.}-{3:3}, at: sock_close+0x98/0x230 net/socket.c:1336
1 lock held by syz-executor.3/2070:
 #0: ffff888036b8d610 (&sb->s_type->i_mutex_key#11){+.+.}-{3:3}, at: inode_lock include/linux/fs.h:787 [inline]
 #0: ffff888036b8d610 (&sb->s_type->i_mutex_key#11){+.+.}-{3:3}, at: __sock_release net/socket.c:648 [inline]
 #0: ffff888036b8d610 (&sb->s_type->i_mutex_key#11){+.+.}-{3:3}, at: sock_close+0x98/0x230 net/socket.c:1336

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

NMI backtrace for cpu 1
CPU: 1 PID: 27 Comm: khungtaskd Not tainted 5.15.148-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/25/2024
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x1e3/0x2cb lib/dump_stack.c:106
 nmi_cpu_backtrace+0x46a/0x4a0 lib/nmi_backtrace.c:111
 nmi_trigger_cpumask_backtrace+0x181/0x2a0 lib/nmi_backtrace.c:62
 trigger_all_cpu_backtrace include/linux/nmi.h:148 [inline]
 check_hung_uninterruptible_tasks kernel/hung_task.c:210 [inline]
 watchdog+0xe72/0xeb0 kernel/hung_task.c:295
 kthread+0x3f6/0x4f0 kernel/kthread.c:319
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298
 </TASK>
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 PID: 4585 Comm: kworker/u4:12 Not tainted 5.15.148-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/25/2024
Workqueue: phy9 ieee80211_iface_work
RIP: 0010:memset_erms+0xb/0x10 arch/x86/lib/memset_64.S:65
Code: 03 40 0f b6 f6 48 b8 01 01 01 01 01 01 01 01 48 0f af c6 f3 48 ab 89 d1 f3 aa 4c 89 c8 c3 90 49 89 f9 40 88 f0 48 89 d1 f3 aa <4c> 89 c8 c3 90 49 89 fa 40 0f b6 ce 48 b8 01 01 01 01 01 01 01 01
RSP: 0018:ffffc9000ee674f8 EFLAGS: 00000246
RAX: ffff88801edd3500 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000060 RSI: 0000000000000000 RDI: ffff88801edd35e0
RBP: ffffc9000ee67578 R08: ffffc9000ee67578 R09: ffff88801edd3580
R10: 0000000000000000 R11: dffffc0000000001 R12: 0000000000000001
R13: 0000000000000b20 R14: 0000000000000001 R15: 0000000000000001
FS:  0000000000000000(0000) GS:ffff8880b9a00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f020ec69ff0 CR3: 000000003258e000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <TASK>
 slab_post_alloc_hook+0x73/0x380 mm/slab.h:521
 slab_alloc_node mm/slub.c:3220 [inline]
 slab_alloc mm/slub.c:3228 [inline]
 __kmalloc+0x120/0x300 mm/slub.c:4403
 kmalloc include/linux/slab.h:596 [inline]
 kzalloc include/linux/slab.h:721 [inline]
 cfg80211_inform_single_bss_frame_data net/wireless/scan.c:2460 [inline]
 cfg80211_inform_bss_frame_data+0x4f8/0x20f0 net/wireless/scan.c:2521
 ieee80211_bss_info_update+0x7a6/0xc80 net/mac80211/scan.c:190
 ieee80211_rx_bss_info net/mac80211/ibss.c:1123 [inline]
 ieee80211_rx_mgmt_probe_beacon net/mac80211/ibss.c:1614 [inline]
 ieee80211_ibss_rx_queued_mgmt+0x175e/0x2af0 net/mac80211/ibss.c:1643
 ieee80211_iface_process_skb net/mac80211/iface.c:1441 [inline]
 ieee80211_iface_work+0x78f/0xcc0 net/mac80211/iface.c:1495
 process_one_work+0x8a1/0x10c0 kernel/workqueue.c:2310
 worker_thread+0xaca/0x1280 kernel/workqueue.c:2457
 kthread+0x3f6/0x4f0 kernel/kthread.c:319
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298
 </TASK>

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/02/14 11:00 linux-5.15.y 6139f2a02fe0 d902085f .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: task hung in tls_sk_proto_close
* Struck through repros no longer work on HEAD.