syzbot


BUG: soft lockup in free_work (2)

Status: premoderation: reported on 2024/08/31 23:13
Reported-by: syzbot+4fe688b84a5d2799f7f6@syzkaller.appspotmail.com
First crash: 15d, last: 15d
Similar bugs (3)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream BUG: soft lockup in free_work kernel 1 1705d 1701d 0/28 auto-closed as invalid on 2020/04/15 10:34
android-5-15 BUG: soft lockup in free_work 1 146d 146d 0/2 auto-obsoleted due to no activity on 2024/07/22 06:27
upstream BUG: soft lockup in free_work (2) kernel 1 1587d 1583d 0/28 auto-closed as invalid on 2020/07/12 02:53

Sample crash report:
watchdog: BUG: soft lockup - CPU#0 stuck for 123s! [kworker/0:19:3069]
Modules linked in:
CPU: 0 PID: 3069 Comm: kworker/0:19 Not tainted 5.15.156-syzkaller-00821-g29d153aabd54 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/27/2024
Workqueue: events free_work
RIP: 0010:native_safe_halt arch/x86/include/asm/irqflags.h:51 [inline]
RIP: 0010:arch_safe_halt arch/x86/include/asm/irqflags.h:89 [inline]
RIP: 0010:kvm_wait+0x147/0x180 arch/x86/kernel/kvm.c:918
Code: 4c 89 e8 48 c1 e8 03 42 0f b6 04 20 84 c0 44 8b 74 24 1c 75 34 41 0f b6 45 00 44 38 f0 75 10 66 90 0f 00 2d 6b ef 12 04 fb f4 <e9> 24 ff ff ff fb e9 1e ff ff ff 44 89 e9 80 e1 07 38 c1 7c a3 4c
RSP: 0018:ffffc9000561f7a0 EFLAGS: 00000246
RAX: 0000000000000001 RBX: 1ffff92000ac3ef8 RCX: 1ffffffff0d5ab14
RDX: 0000000000000001 RSI: 0000000000000001 RDI: ffff8881f7038ad4
RBP: ffffc9000561f850 R08: dffffc0000000000 R09: ffffed103ee0715b
R10: 0000000000000000 R11: dffffc0000000001 R12: dffffc0000000000
R13: ffff8881f7038ad4 R14: 0000000000000001 R15: 1ffff92000ac3efc
FS:  0000000000000000(0000) GS:ffff8881f7000000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000000 CR3: 000000010ef4e000 CR4: 00000000003506b0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000600
Call Trace:
 <IRQ>
 </IRQ>
 <TASK>
 pv_wait arch/x86/include/asm/paravirt.h:597 [inline]
 pv_wait_node kernel/locking/qspinlock_paravirt.h:325 [inline]
 __pv_queued_spin_lock_slowpath+0x41b/0xc40 kernel/locking/qspinlock.c:473
 pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:585 [inline]
 queued_spin_lock_slowpath arch/x86/include/asm/qspinlock.h:51 [inline]
 queued_spin_lock include/asm-generic/qspinlock.h:85 [inline]
 do_raw_spin_lock include/linux/spinlock.h:187 [inline]
 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:136 [inline]
 _raw_spin_lock_bh+0x139/0x1b0 kernel/locking/spinlock.c:178
 __sock_map_delete net/core/sock_map.c:419 [inline]
 sock_map_delete_elem+0x161/0x230 net/core/sock_map.c:451
 bpf_prog_8a405b5ced52e191+0x42/0xbc4
 bpf_dispatcher_nop_func include/linux/bpf.h:785 [inline]
 __bpf_prog_run include/linux/filter.h:628 [inline]
 bpf_prog_run include/linux/filter.h:635 [inline]
 __bpf_trace_run kernel/trace/bpf_trace.c:1880 [inline]
 bpf_trace_run2+0xec/0x210 kernel/trace/bpf_trace.c:1917
 __bpf_trace_kfree+0x6f/0x90 include/trace/events/kmem.h:118
 trace_kfree include/trace/events/kmem.h:118 [inline]
 kfree+0x1f3/0x220 mm/slub.c:4569
 kvfree+0x35/0x40 mm/util.c:664
 __vunmap+0x850/0x8f0 mm/vmalloc.c:2657
 free_work+0x5b/0x80 mm/vmalloc.c:96
 process_one_work+0x6bb/0xc10 kernel/workqueue.c:2325
 worker_thread+0xad5/0x12a0 kernel/workqueue.c:2472
 kthread+0x421/0x510 kernel/kthread.c:337
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:300
 </TASK>
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 3226 Comm: syz.1.793 Not tainted 5.15.156-syzkaller-00821-g29d153aabd54 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/27/2024
RIP: 0010:perf_callchain_user+0x5c/0x1180 arch/x86/events/core.c:2874
Code: 80 3c 30 00 74 0c 48 c7 c7 40 3c 50 87 e8 2c 8b b1 00 48 8b 1d 15 1a 4f 06 48 85 db 74 31 48 89 d8 48 c1 e8 03 42 80 3c 30 00 <74> 08 48 89 df e8 0a 8b b1 00 ff 13 89 c3 31 ff 89 c6 e8 9d 4b 6f
RSP: 0018:ffffc900001ceb48 EFLAGS: 00000046
RAX: 1ffffffff0d4fc64 RBX: ffffffff86a7e320 RCX: ffff8881130493c0
RDX: 0000000000010707 RSI: ffffc900054bff58 RDI: ffffc900001cec40
RBP: ffffc900001cebd0 R08: ffffffff819674e7 R09: ffffc900001ceb00
R10: 0000000000000000 R11: dffffc0000000001 R12: 1ffff92000039d84
R13: ffffc900054bff58 R14: dffffc0000000000 R15: ffffc900001cec40
FS:  00007f7514c606c0(0000) GS:ffff8881f7100000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fd0b50676c0 CR3: 000000011756d000 CR4: 00000000003506a0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000600
Call Trace:
 <NMI>
 </NMI>
 <IRQ>
 get_perf_callchain+0x549/0x810 kernel/events/callchain.c:221
 perf_callchain kernel/events/core.c:7437 [inline]
 perf_prepare_sample+0x359/0x1a80 kernel/events/core.c:7464
 __perf_event_output kernel/events/core.c:7633 [inline]
 perf_event_output_forward+0xdb/0x1b0 kernel/events/core.c:7653
 __perf_event_overflow+0x20b/0x390 kernel/events/core.c:9323
 perf_swevent_hrtimer+0x3fd/0x560 kernel/events/core.c:10719
 __run_hrtimer kernel/time/hrtimer.c:1685 [inline]
 __hrtimer_run_queues+0x41a/0xad0 kernel/time/hrtimer.c:1749
 hrtimer_interrupt+0x40c/0xaa0 kernel/time/hrtimer.c:1811
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1085 [inline]
 __sysvec_apic_timer_interrupt+0xfd/0x3c0 arch/x86/kernel/apic/apic.c:1102
 sysvec_apic_timer_interrupt+0x44/0xc0 arch/x86/kernel/apic/apic.c:1096
 asm_sysvec_apic_timer_interrupt+0x1b/0x20 arch/x86/include/asm/idtentry.h:638
RIP: 0010:trylock_clear_pending kernel/locking/qspinlock_paravirt.h:121 [inline]
RIP: 0010:pv_wait_head_or_lock kernel/locking/qspinlock_paravirt.h:435 [inline]
RIP: 0010:__pv_queued_spin_lock_slowpath+0x5be/0xc40 kernel/locking/qspinlock.c:508
Code: dc c6 03 00 48 8b 44 24 10 0f b6 04 10 84 c0 0f 85 48 01 00 00 48 8b 44 24 08 c6 00 01 bb 00 80 ff ff eb 06 f3 90 ff c3 74 5e <41> 0f b6 44 15 00 84 c0 75 36 41 80 3f 00 75 ea 4c 89 ff be 02 00
RSP: 0018:ffffc900001cf540 EFLAGS: 00000282
RAX: 0000000000000000 RBX: 00000000ffffaca2 RCX: ffffffff81552d3f
RDX: dffffc0000000000 RSI: 0000000000000003 RDI: ffff888122798928
RBP: ffffc900001cf630 R08: dffffc0000000000 R09: ffffed10244f3126
R10: 0000000000000000 R11: dffffc0000000001 R12: ffff8881f7138ad4
R13: 1ffff110244f3125 R14: 1ffff1103ee20001 R15: ffff888122798928
 pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:585 [inline]
 queued_spin_lock_slowpath arch/x86/include/asm/qspinlock.h:51 [inline]
 queued_spin_lock include/asm-generic/qspinlock.h:85 [inline]
 do_raw_spin_lock include/linux/spinlock.h:187 [inline]
 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:136 [inline]
 _raw_spin_lock_bh+0x139/0x1b0 kernel/locking/spinlock.c:178
 __sock_map_delete net/core/sock_map.c:419 [inline]
 sock_map_delete_elem+0x161/0x230 net/core/sock_map.c:451
 bpf_prog_8a405b5ced52e191+0x42/0xbc4
 bpf_dispatcher_nop_func include/linux/bpf.h:785 [inline]
 __bpf_prog_run include/linux/filter.h:628 [inline]
 bpf_prog_run include/linux/filter.h:635 [inline]
 __bpf_trace_run kernel/trace/bpf_trace.c:1880 [inline]
 bpf_trace_run2+0xec/0x210 kernel/trace/bpf_trace.c:1917
 __bpf_trace_kfree+0x6f/0x90 include/trace/events/kmem.h:118
 trace_kfree include/trace/events/kmem.h:118 [inline]
 kfree+0x1f3/0x220 mm/slub.c:4569
 sk_psock_free_link include/linux/skmsg.h:420 [inline]
 sock_map_del_link net/core/sock_map.c:160 [inline]
 sock_map_unref+0x352/0x4d0 net/core/sock_map.c:182
 __sock_map_delete net/core/sock_map.c:425 [inline]
 sock_map_delete_elem+0x191/0x230 net/core/sock_map.c:451
 bpf_prog_8a405b5ced52e191+0x42/0xbc4
 bpf_dispatcher_nop_func include/linux/bpf.h:785 [inline]
 __bpf_prog_run include/linux/filter.h:628 [inline]
 bpf_prog_run include/linux/filter.h:635 [inline]
 __bpf_trace_run kernel/trace/bpf_trace.c:1880 [inline]
 bpf_trace_run2+0xec/0x210 kernel/trace/bpf_trace.c:1917
 __bpf_trace_kfree+0x6f/0x90 include/trace/events/kmem.h:118
 trace_kfree include/trace/events/kmem.h:118 [inline]
 kfree+0x1f3/0x220 mm/slub.c:4569
 skb_free_head net/core/skbuff.c:656 [inline]
 skb_release_data+0x8a9/0xa80 net/core/skbuff.c:678
 skb_release_all net/core/skbuff.c:743 [inline]
 __kfree_skb+0x50/0x70 net/core/skbuff.c:757
 sk_wmem_free_skb include/net/sock.h:1634 [inline]
 tcp_rtx_queue_unlink_and_free+0x203/0x720 include/net/tcp.h:1907
 tcp_clean_rtx_queue net/ipv4/tcp_input.c:3343 [inline]
 tcp_ack+0x23e0/0x68a0 net/ipv4/tcp_input.c:3900
 tcp_rcv_established+0xcd6/0x1ac0 net/ipv4/tcp_input.c:5904
 tcp_v4_do_rcv+0x3d7/0xa00 net/ipv4/tcp_ipv4.c:1722
 tcp_v4_rcv+0x23dd/0x2a70 net/ipv4/tcp_ipv4.c:2125
 ip_protocol_deliver_rcu+0x32f/0x710 net/ipv4/ip_input.c:204
 ip_local_deliver_finish net/ipv4/ip_input.c:231 [inline]
 NF_HOOK include/linux/netfilter.h:305 [inline]
 ip_local_deliver+0x2c6/0x590 net/ipv4/ip_input.c:252
 dst_input include/net/dst.h:454 [inline]
 ip_sublist_rcv_finish net/ipv4/ip_input.c:577 [inline]
 ip_list_rcv_finish net/ipv4/ip_input.c:628 [inline]
 ip_sublist_rcv+0x7e2/0x980 net/ipv4/ip_input.c:636
 ip_list_rcv+0x422/0x470 net/ipv4/ip_input.c:671
 __netif_receive_skb_list_ptype net/core/dev.c:5535 [inline]
 __netif_receive_skb_list_core+0x6b1/0x890 net/core/dev.c:5583
 __netif_receive_skb_list net/core/dev.c:5635 [inline]
 netif_receive_skb_list_internal+0x967/0xcc0 net/core/dev.c:5726
 gro_normal_list net/core/dev.c:5880 [inline]
 napi_complete_done+0x344/0x770 net/core/dev.c:6618
 virtqueue_napi_complete drivers/net/virtio_net.c:357 [inline]
 virtnet_poll+0xbee/0x1260 drivers/net/virtio_net.c:1592
 __napi_poll+0xc4/0x5a0 net/core/dev.c:7042
 napi_poll net/core/dev.c:7109 [inline]
 net_rx_action+0x47d/0xc50 net/core/dev.c:7199
 __do_softirq+0x26d/0x5bf kernel/softirq.c:565
 invoke_softirq kernel/softirq.c:425 [inline]
 __irq_exit_rcu+0x50/0xf0 kernel/softirq.c:648
 irq_exit_rcu+0x9/0x10 kernel/softirq.c:660
 sysvec_apic_timer_interrupt+0x9a/0xc0 arch/x86/kernel/apic/apic.c:1096
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x1b/0x20 arch/x86/include/asm/idtentry.h:638
RIP: 0010:preempt_schedule_irq+0xc2/0x140 kernel/sched/core.c:6916
Code: 4c 89 e7 e8 d0 a0 ce fc f6 44 24 21 02 74 0b 0f 0b 48 f7 03 08 00 00 00 74 4d bf 01 00 00 00 e8 24 45 68 fc fb bf 01 00 00 00 <e8> e9 e3 ff ff fa bf 01 00 00 00 e8 ae 46 68 fc 65 48 8b 1d c6 60
RSP: 0018:ffffc900054bf640 EFLAGS: 00000246
RAX: 1ffff110226093ce RBX: 1ffff92000a97ecc RCX: ffffffff84e5de00
RDX: 1ffff1102260927d RSI: 0000000000000000 RDI: 0000000000000001
RBP: ffffc900054bf6c8 R08: ffffffff874cc040 R09: ffffffff874cc048
R10: ffffffff874cc058 R11: ffffffff874cc050 R12: ffffc900054bf660
R13: 0000000000000000 R14: dffffc0000000000 R15: 1ffff92000a97ec8
 irqentry_exit_cond_resched+0x2a/0x30 kernel/entry/common.c:398
 irqentry_exit+0x30/0x40 kernel/entry/common.c:432
 sysvec_apic_timer_interrupt+0x55/0xc0 arch/x86/kernel/apic/apic.c:1096
 asm_sysvec_apic_timer_interrupt+0x1b/0x20 arch/x86/include/asm/idtentry.h:638
RIP: 0010:inet_twsk_purge+0x7ea/0x880 net/ipv4/inet_timewait_sock.c:264
Code: e8 bb 00 00 00 48 8b 5c 24 28 2e 2e 2e 31 c0 e8 fc 62 37 fd e9 0a f9 ff ff e8 72 63 37 fd 48 8b 74 24 58 ff c6 48 8b 54 24 38 <48> 89 d0 48 c1 e8 03 42 0f b6 04 38 84 c0 75 19 3b 32 77 38 48 89
RSP: 0018:ffffc900054bf7c0 EFLAGS: 00000206
RAX: 0000000000000000 RBX: 000000000000940e RCX: ffff8881130493c0
RDX: ffffffff8758bc10 RSI: 000000000000940f RDI: 000000000000940e
RBP: ffffc900054bf8c8 R08: ffffffff8425e87a R09: ffffed102004ec5e
R10: 0000000000000000 R11: dffffc0000000001 R12: 000000000000940e
R13: 1ffffffff0e2d600 R14: ffffc900054bf960 R15: dffffc0000000000
 tcp_sk_exit_batch+0x2c/0x90 net/ipv4/tcp_ipv4.c:3250
 ops_exit_list net/core/net_namespace.c:174 [inline]
 setup_net+0x7ec/0xb50 net/core/net_namespace.c:352
 copy_net_ns+0x35c/0x5b0 net/core/net_namespace.c:473
 create_new_namespaces+0x416/0x670 kernel/nsproxy.c:110
 copy_namespaces+0x1d1/0x220 kernel/nsproxy.c:178
 copy_process+0x1174/0x3290 kernel/fork.c:2267
 kernel_clone+0x21e/0x9e0 kernel/fork.c:2662
 __do_sys_clone kernel/fork.c:2788 [inline]
 __se_sys_clone kernel/fork.c:2772 [inline]
 __x64_sys_clone+0x23f/0x290 kernel/fork.c:2772
 x64_sys_call+0x1b0/0x9a0 arch/x86/include/generated/asm/syscalls_64.h:57
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x3b/0xb0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x66/0xd0
RIP: 0033:0x7f7516003eb9
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:00007f7514c5ffe8 EFLAGS: 00000206 ORIG_RAX: 0000000000000038
RAX: ffffffffffffffda RBX: 00007f75161a0058 RCX: 00007f7516003eb9
RDX: 0000000020001b00 RSI: 0000000020000a20 RDI: 0000000042822000
RBP: 00007f751607193e R08: 0000000020001b80 R09: 0000000020001b80
R10: 0000000020001b40 R11: 0000000000000206 R12: 0000000000000000
R13: 0000000000000000 R14: 00007f75161a0058 R15: 00007ffe10bcccd8
 </TASK>

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/08/31 23:12 android13-5.15-lts 29d153aabd54 1eda0d14 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-15-perf BUG: soft lockup in free_work
* Struck through repros no longer work on HEAD.