syzbot


INFO: rcu detected stall in tcp_write_timer

Status: upstream: reported on 2024/06/21 02:50
Reported-by: syzbot+22fe46255c9b9bcfe460@syzkaller.appspotmail.com
First crash: 207d, last: 12d
Similar bugs (14)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in tcp_write_timer (2) bpf 2 1441d 1497d 0/28 auto-closed as invalid on 2021/05/03 11:59
upstream INFO: rcu detected stall in tcp_write_timer (4) net 1 183d 183d 0/28 auto-obsoleted due to no activity on 2024/10/13 08:46
linux-5.15 INFO: rcu detected stall in tcp_write_timer 4 92d 144d 0/3 upstream: reported on 2024/08/22 21:30
upstream INFO: rcu detected stall in tcp_write_timer net 3 1991d 1985d 0/28 auto-closed as invalid on 2019/10/25 14:11
upstream INFO: rcu detected stall in tcp_write_timer (3) net 1 1308d 1308d 0/28 auto-closed as invalid on 2021/09/13 13:17
upstream BUG: soft lockup in tcp_write_timer (4) kasan mm 4 192d 216d 26/28 fixed on 2024/07/09 19:14
linux-4.14 INFO: rcu detected stall in tcp_write_timer 4 1593d 1835d 0/1 auto-closed as invalid on 2021/01/02 05:45
linux-4.19 INFO: rcu detected stall in tcp_write_timer 2 1722d 1776d 0/1 auto-closed as invalid on 2020/08/26 06:46
linux-4.19 BUG: soft lockup in tcp_write_timer (3) 2 745d 758d 0/1 upstream: reported on 2022/12/17 21:41
linux-4.19 BUG: soft lockup in tcp_write_timer (2) 2 1155d 1218d 0/1 auto-closed as invalid on 2022/03/16 10:56
linux-4.19 BUG: soft lockup in tcp_write_timer 1 1383d 1383d 0/1 auto-closed as invalid on 2021/07/30 14:52
upstream BUG: soft lockup in tcp_write_timer (2) kvm 1 994d 994d 0/28 auto-closed as invalid on 2022/06/24 22:31
upstream BUG: soft lockup in tcp_write_timer (3) net 6 371d 479d 0/28 closed as invalid on 2024/03/18 17:07
android-5-15 BUG: soft lockup in tcp_write_timer 11 155d 267d 0/2 auto-obsoleted due to no activity on 2024/11/10 05:27

Sample crash report:
rcu: INFO: rcu_preempt detected expedited stalls on CPUs/tasks: { P4321 1-.... } 2700 jiffies s: 6161 root: 0x2/T
rcu: blocking rcu_node structures (internal RCU debug):
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 6381 Comm: syz.3.616 Tainted: G        W          6.1.122-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
RIP: 0010:_test_bit include/asm-generic/bitops/instrumented-non-atomic.h:141 [inline]
RIP: 0010:cpumask_test_cpu include/linux/cpumask.h:444 [inline]
RIP: 0010:cpu_online include/linux/cpumask.h:1030 [inline]
RIP: 0010:trace_hrtimer_expire_exit include/trace/events/timer.h:286 [inline]
RIP: 0010:__run_hrtimer kernel/time/hrtimer.c:1692 [inline]
RIP: 0010:__hrtimer_run_queues+0x657/0xe50 kernel/time/hrtimer.c:1753
Code: 00 44 8b 3d 83 3c 21 0d 44 89 ff 89 de e8 91 d1 10 00 41 39 df 0f 86 ad 01 00 00 e8 23 d0 10 00 41 89 df 4c 89 f8 48 c1 e8 06 <48> 8d 3c c5 a8 06 9b 8e be 08 00 00 00 e8 d7 64 68 00 31 db 4c 0f
RSP: 0018:ffffc900001e00c0 EFLAGS: 00000046
RAX: 0000000000000000 RBX: 0000000000000001 RCX: ffff888073883b80
RDX: 0000000000010100 RSI: 0000000000000001 RDI: 0000000000000002
RBP: ffffc900001e0210 R08: ffffffff8179cc3f R09: fffffbfff1d360d6
R10: 0000000000000000 R11: dffffc0000000001 R12: ffff8880b8f2a4c0
R13: 0000000000000001 R14: ffff8880b8f2a4c0 R15: 0000000000000001
FS:  00007ff3d95206c0(0000) GS:ffff8880b8f00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f7641c2af98 CR3: 0000000058f18000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <IRQ>
 hrtimer_interrupt+0x392/0x980 kernel/time/hrtimer.c:1815
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1107 [inline]
 __sysvec_apic_timer_interrupt+0x158/0x5b0 arch/x86/kernel/apic/apic.c:1124
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1118 [inline]
 sysvec_apic_timer_interrupt+0x4d/0xc0 arch/x86/kernel/apic/apic.c:1118
 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:691
RIP: 0010:bpf_tree_comp kernel/bpf/core.c:622 [inline]
RIP: 0010:__lt_find include/linux/rbtree_latch.h:115 [inline]
RIP: 0010:latch_tree_find include/linux/rbtree_latch.h:208 [inline]
RIP: 0010:bpf_ksym_find kernel/bpf/core.c:698 [inline]
RIP: 0010:is_bpf_text_address+0x130/0x2a0 kernel/bpf/core.c:732
Code: 48 8d 6c 6d 00 48 f7 dd 4c 8d a4 2b e0 fd ff ff 4c 89 e0 48 c1 e8 03 42 80 3c 28 00 74 08 4c 89 e7 e8 14 70 4a 00 4d 8b 24 24 <4c> 89 e7 4c 89 fe e8 a5 de f2 ff 4d 39 fc 76 0b e8 bb dc f2 ff 48
RSP: 0018:ffffc900001e0428 EFLAGS: 00000246
RAX: 1ffff11006989428 RBX: ffff888034c4a360 RCX: ffff888073883b80
RDX: 0000000000000100 RSI: 00007ff3d8785d29 RDI: ffffffffa0001fd0
RBP: 0000000000000000 R08: ffffffff8197bfab R09: fffffbfff2249c4d
R10: 0000000000000000 R11: dffffc0000000001 R12: ffffffffa0000950
R13: dffffc0000000000 R14: 0000000000000001 R15: 00007ff3d8785d29
 kernel_text_address+0x9f/0xd0 kernel/extable.c:125
 __kernel_text_address+0x9/0x40 kernel/extable.c:79
 unwind_get_return_address+0x49/0x80 arch/x86/kernel/unwind_orc.c:323
 arch_stack_walk+0xf3/0x140 arch/x86/kernel/stacktrace.c:26
 stack_trace_save+0x113/0x1c0 kernel/stacktrace.c:122
 kasan_save_stack mm/kasan/common.c:45 [inline]
 kasan_set_track+0x4b/0x70 mm/kasan/common.c:52
 kasan_save_free_info+0x27/0x40 mm/kasan/generic.c:516
 ____kasan_slab_free+0xd6/0x120 mm/kasan/common.c:236
 kasan_slab_free include/linux/kasan.h:177 [inline]
 slab_free_hook mm/slub.c:1724 [inline]
 slab_free_freelist_hook mm/slub.c:1750 [inline]
 slab_free mm/slub.c:3661 [inline]
 __kmem_cache_free+0x25c/0x3c0 mm/slub.c:3674
 skb_free_head net/core/skbuff.c:762 [inline]
 skb_release_data+0x5de/0x7a0 net/core/skbuff.c:791
 skb_release_all net/core/skbuff.c:856 [inline]
 __kfree_skb+0x4c/0x60 net/core/skbuff.c:870
 tcp_write_queue_purge+0x132/0x2f0 net/ipv4/tcp.c:3099
 tcp_done_with_error+0x3d/0xc0 net/ipv4/tcp_input.c:4393
 tcp_write_err net/ipv4/tcp_timer.c:70 [inline]
 tcp_write_timeout net/ipv4/tcp_timer.c:273 [inline]
 tcp_retransmit_timer+0x12ca/0x2800 net/ipv4/tcp_timer.c:547
 tcp_write_timer+0x12e/0x280 net/ipv4/tcp_timer.c:676
 call_timer_fn+0x1ad/0x6b0 kernel/time/timer.c:1504
 expire_timers kernel/time/timer.c:1549 [inline]
 __run_timers+0x67c/0x890 kernel/time/timer.c:1820
 run_timer_softirq+0x63/0xf0 kernel/time/timer.c:1833
 handle_softirqs+0x2ee/0xa40 kernel/softirq.c:571
 __do_softirq kernel/softirq.c:605 [inline]
 invoke_softirq kernel/softirq.c:445 [inline]
 __irq_exit_rcu+0x157/0x240 kernel/softirq.c:654
 irq_exit_rcu+0x5/0x20 kernel/softirq.c:666
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1118 [inline]
 sysvec_apic_timer_interrupt+0xa0/0xc0 arch/x86/kernel/apic/apic.c:1118
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:691
RIP: 0010:__sanitizer_cov_trace_pc+0x41/0x60 kernel/kcov.c:221
Code: ff 00 74 11 81 fa 00 01 00 00 75 35 83 b9 1c 16 00 00 00 74 2c 8b 91 f8 15 00 00 83 fa 02 75 21 48 8b 91 00 16 00 00 48 8b 32 <48> 8d 7e 01 8b 89 fc 15 00 00 48 39 cf 73 08 48 89 3a 48 89 44 f2
RSP: 0018:ffffc9001b9e79c0 EFLAGS: 00000246
RAX: ffffffff81ecf252 RBX: ffffea0001f49780 RCX: ffff888073883b80
RDX: ffffc9000df82000 RSI: 000000000000f273 RDI: 0000000000000000
RBP: 1ffffd40003ba6d1 R08: ffffffff81ecf23b R09: fffffbfff1d360d6
R10: 0000000000000000 R11: dffffc0000000001 R12: ffffea0001dd3680
R13: ffffea0001dd36b0 R14: ffffea0001dd3680 R15: ffffea0001dd3688
 arch_static_branch arch/x86/include/asm/jump_label.h:27 [inline]
 page_fixed_fake_head include/linux/page-flags.h:216 [inline]
 _compound_head include/linux/page-flags.h:257 [inline]
 PageSlab include/linux/page-flags.h:487 [inline]
 __page_table_check_zero+0xe2/0x4b0 mm/page_table_check.c:144
 page_table_check_free include/linux/page_table_check.h:46 [inline]
 free_pages_prepare mm/page_alloc.c:1460 [inline]
 free_pcp_prepare mm/page_alloc.c:1509 [inline]
 free_unref_page_prepare+0x12b6/0x15b0 mm/page_alloc.c:3384
 free_unref_page+0x33/0x3e0 mm/page_alloc.c:3479
 free_slab mm/slub.c:2031 [inline]
 discard_slab mm/slub.c:2037 [inline]
 __unfreeze_partials+0x1b7/0x210 mm/slub.c:2586
 put_cpu_partial+0x17b/0x250 mm/slub.c:2662
 qlink_free mm/kasan/quarantine.c:168 [inline]
 qlist_free_all+0x76/0xe0 mm/kasan/quarantine.c:187
 kasan_quarantine_reduce+0x156/0x170 mm/kasan/quarantine.c:294
 __kasan_slab_alloc+0x1f/0x70 mm/kasan/common.c:305
 kasan_slab_alloc include/linux/kasan.h:201 [inline]
 slab_post_alloc_hook+0x52/0x3a0 mm/slab.h:737
 slab_alloc_node mm/slub.c:3398 [inline]
 slab_alloc mm/slub.c:3406 [inline]
 __kmem_cache_alloc_lru mm/slub.c:3413 [inline]
 kmem_cache_alloc+0x10c/0x2d0 mm/slub.c:3422
 kmem_cache_zalloc include/linux/slab.h:689 [inline]
 lsm_inode_alloc security/security.c:596 [inline]
 security_inode_alloc+0x24/0x110 security/security.c:1040
 inode_init_always+0x943/0xc70 fs/inode.c:232
 alloc_inode fs/inode.c:268 [inline]
 new_inode_pseudo+0x94/0x1d0 fs/inode.c:1063
 sock_alloc net/socket.c:631 [inline]
 __sock_create+0x11f/0x930 net/socket.c:1514
 sock_create net/socket.c:1606 [inline]
 __sys_socket_create net/socket.c:1643 [inline]
 __sys_socket+0x136/0x3a0 net/socket.c:1671
 __do_sys_socket net/socket.c:1684 [inline]
 __se_sys_socket net/socket.c:1682 [inline]
 __x64_sys_socket+0x76/0x80 net/socket.c:1682
 do_syscall_x64 arch/x86/entry/common.c:51 [inline]
 do_syscall_64+0x3b/0xb0 arch/x86/entry/common.c:81
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7ff3d8785d29
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ff3d9520038 EFLAGS: 00000246 ORIG_RAX: 0000000000000029
RAX: ffffffffffffffda RBX: 00007ff3d8975fa0 RCX: 00007ff3d8785d29
RDX: 0000000000000000 RSI: 0000000000000002 RDI: 000000000000000a
RBP: 00007ff3d8801b08 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 0000000000000000 R14: 00007ff3d8975fa0 R15: 00007ffe62485c78
 </TASK>

Crashes (14):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/01/02 03:20 linux-6.1.y 563edd786f0a d3ccff63 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
2024/11/26 15:04 linux-6.1.y e4d90d63d385 e9a9a9f2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
2024/10/16 23:30 linux-6.1.y aa4cd140bba5 666f77ed .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
2024/10/08 11:18 linux-6.1.y aa4cd140bba5 402f1df0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
2024/10/08 08:48 linux-6.1.y aa4cd140bba5 402f1df0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
2024/10/01 18:23 linux-6.1.y aa4cd140bba5 ea2b66a6 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
2024/09/27 11:40 linux-6.1.y e526b12bf916 9314348a .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
2024/09/25 03:38 linux-6.1.y e526b12bf916 5643e0e9 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
2024/08/28 18:29 linux-6.1.y ee5e09825b81 ef3de9e8 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
2024/08/03 17:11 linux-6.1.y 48d525b0e463 1786a2a8 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
2024/08/03 14:21 linux-6.1.y 48d525b0e463 1786a2a8 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
2024/07/26 10:37 linux-6.1.y c18e82d3ee44 3f86dfed .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
2024/07/21 13:41 linux-6.1.y 9b3f9a5b12dc b88348e9 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
2024/06/21 02:49 linux-6.1.y eb44d83053d6 dac2aa43 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf INFO: rcu detected stall in tcp_write_timer
* Struck through repros no longer work on HEAD.